Ridimensionamento del campo textarea in una metabox personalizzata

7 giu 2011, 21:12:27
Visualizzazioni: 23.1K
Voti: 0

Ecco il codice per una metabox personalizzata. In modo molto semplice, come posso ridimensionare la casella textarea? Vorrei aggiungere un'espressione come cols="50" rows="5".

// Mostra il campo
    echo '<p>Inserisci la posizione:</p>';
echo '<div class="customEditor"><input type="textarea" name="_location" value="' . $location  . '" class="widefat" /></div>';
    echo '<p>Come dovrebbero vestirsi le persone?</p>';
    echo '<input type="textarea" name="_dresscode" value="' . $dresscode  . '" class="widefat" />';

(Fonte: http://wptheming.com/2010/08/custom-metabox-for-post-type/)

Grazie.

1
Commenti

Perché non aggiungi semplicemente gli attributi nel codice?

kaiser kaiser
7 giu 2011 21:57:24
Tutte le risposte alla domanda 4
0

Potresti provare a stilizzarlo con CSS aggiungendo un ID o una classe al textarea e inserendo gli stili nell'head di wp_admin.

Oppure, un modo rapido sarebbe fare qualcosa del genere:

echo '<textarea name="_dresscode" class="widefat" style="width:400px !important; height:80px !important;" >' . $dresscode  . '</textarea>';

Altrimenti, hai provato semplicemente:

echo '<textarea name="_dresscode" class="widefat" cols="50" rows="5">' . $dresscode  . '</textarea>'
7 giu 2011 21:29:48
0

Sebbene l'utilizzo dell'attributo cols del tag textarea sia un modo per impostare la larghezza di un'area di testo in un modulo metabox, questo metodo non risponderà molto bene al ridimensionamento della finestra di WordPress da parte dell'utente. Per rispondere al ridimensionamento della finestra, potresti voler includere anche un attributo di stile inline. Ad esempio:

<textarea name="myName" id="myId" rows="5" cols="60" style="width:99%">Contenuto da inserire nella casella</textarea>

Il valore width:99% sovrascriverà l'attributo cols sui browser che supportano CSS (praticamente tutti) e manterrà la tua area di testo correttamente dimensionata.

3 dic 2012 21:40:53
3

Il codice corretto per una textarea è:

<textarea cols=20 rows=20 name=mytext>Contenuto</textarea>
7 giu 2011 22:18:27
Commenti

@kaiser, tosho ha ragione, non avevo nemmeno visto che il tuo html era sbagliato per textarea.. Ho aggiornato la mia risposta.

mike23 mike23
7 giu 2011 22:38:41

Mike e @toscho, questo ha funzionato. Molte grazie.

echo '<textarea name="_dresscode" class="widefat" cols="50" rows="5" />' . $dresscode . '</textarea>'

user5486 user5486
7 giu 2011 23:07:01

@user5486 rows="5" /> è errato. Rimuovi lo slash.

fuxia fuxia
8 giu 2011 02:57:35
0

Meta Box Per Area di Testo

Questo include un campo personalizzato chiamato wpsites_textarea.

?>
<p><label for="wpsites_textarea" class="screen-reader-text"><b><?php _e( 'Meta Box Stile Genesis', 'genesis' ); ?></b></label></p>
<p><textarea class="widefat" rows="4" cols="4" name="wpsites_textarea" class="inside"><?php echo esc_textarea( genesis_get_custom_field('wpsites_textarea') ); ?></textarea></p>
<p><?php printf( __( 'Adatto per testo e HTML. Può includere tag %s. <a href=" http://example.com/" target="_blank">Scopri di più sulle meta box personalizzate.</a>', 'genesis' ), genesis_code( 'HTML' ) ); ?></p>
<?php
18 apr 2014 00:42:39