Crea un menú con formato de tabla
-
-
Publicóestapregunta con unnombre de usuario diferente hace aproximadamente dos semanas.Se llamó "Configuración de un diseñoeditableen eleditor WYSIWYG de wordpress".Loeliminó,pero aún sepuedeencontraren el caché de Google.Estoes casi una copia/pegado deese.Porfavor,no hagaseso.You posted this question under a different username about two weeks ago. It was called "Setting up an editable layout in the wordpress WYSIWYG editor". You removed it but it can still be found in Google's cache. This is a near copy/paste of that one. Please don't do that.
- 0
- 2013-01-02
- s_ha_dum
-
Tuve que volver apublicarloporque loborré accidentalmente ynome dejaba hacerlo denuevo.Noesmi intención volver apublicarlo,pero sino sepuedeencontrar,necesitaba volver apublicarlo de algunamanera.I had to re-post it because I accidentally deleted it and it wouldn't let me do it again. I don't mean to re-post but if it can't actually be found I needed to get it back up some how.
- 0
- 2013-01-02
- kia4567
-
Estaes unapregunta de HTML/CSS,no de WordPress.This is an HTML/CSS question, not a WordPress one.
- 0
- 2013-01-02
- s_ha_dum
-
Sinembargo,estoybuscando un complemento que organiceeleditor WYSIWYG.El rellenoestándar: 10pxnofuncionaen este caso,así que creo quetendrá que ver con wordpress.I am looking for a plugin that organizes the WYSIWYG editor though. The standard padding: 10px isn't working in this case, so I believe it will have to do with wordpress.
- 0
- 2013-01-02
- kia4567
-
Las recomendaciones de complementosestánfuera detema.Consulte las [preguntasfrecuentes].Plugin recommendations are off topic. See the [faq].
- 0
- 2013-01-02
- s_ha_dum
-
1 respuesta
- votos
-
- 2013-01-03
Creo que supreguntaes unejemploperfecto del problema XY . En WordPress,no crea unmenú deestetipoen uneditor depublicaciones. Usas unmenú.
Una vez queempiece apensaren suproblema desdeestepunto,todo seráfácil. :)
Primero registre unmenú denavegaciónpersonalizadoparaesta listaen el
functions.php
de sutema:add_action( 'wp_loaded', 'wpse_78027_register_menu' ); function wpse_78027_register_menu() { register_nav_menu( 'services', __( 'A list of your services. Edit the description!', 'theme_textdomain' ) ); }
Ahora obtiene unainterfazparaelmenúen
wp-admin/nav-menus.php
.Entoncesnecesita un andadorpersonalizadoparamostrarmás que soloeltexto delenlace. Tiene suerte,esteproblema ha sido resueltotambién . Necesitas unmarcadomuy simple,así que ...
/** * Custom walker to render the services menu. */ class WPSE_78027_Services_Menu extends Walker_Nav_Menu { public function start_el( &$output, $item, $depth = 0, $args = NULL, $id = 0 ) { $output .= '<li>'; $attributes = ''; if ( ! empty ( $item->url ) ) $attributes .= ' href="' . esc_url( $item->url ) .'"'; $description = empty ( $item->description ) ? '<p>Please add a description!</p>' : wpautop( $item->description ); $title = apply_filters( 'the_title', $item->title, $item->ID ); $item_output = "<a $attributes><h3>$title</h3> <div class='service-description'>$description</div></a>"; // Since $output is called by reference we don't need to return anything. $output .= apply_filters( 'walker_nav_menu_start_el' , $item_output , $item , $depth , $args ); } }
Ahora debe agregar laspáginas aesemenú. No olvideeditar la descripción o :
Y ahorapégalosjuntos. Abrael archivo PHP deplantilla depágina donde desea usarelmenú y agregue:
wp_nav_menu( array ( 'container' => FALSE, 'depth' => 1, 'items_wrap' => '<ul id="service-menu">%3$s</ul>', 'theme_location' => 'services', 'walker' => new WPSE_78027_Services_Menu ) );
Perfecto.
En su hoja deestilo,puede diseñaresta lista ahora sin afectarninguna otratabla.
Código demuestra:
#service-menu { background: #aaa685; border-collapse: separate; border-spacing: 10px; display: table; width: 100%; } #service-menu, #service-menu li { border: 3px solid #e9e9e9; } #service-menu li { display: table-cell; list-style: none; padding: 10px; width: 25%; } #service-menu, #service-menu a { color: #fff; } #service-menu h3 { font: bold 1.5em/1 serif; margin: 0 0 .5em; text-transform: uppercase; } .service-description { font: .9em/1.4 sans-serif; }
Resultado:
Escribiresta respuestatomómástiempo queescribirel código. :)
I think your question is a perfect example for the XY Problem. In WordPress you do not create such a menu in a post editor. You use a menu.
Once you start thinking about your problem from this point, everything is easy. :)
First register a custom navigation menu for this list in your theme’s
functions.php
:add_action( 'wp_loaded', 'wpse_78027_register_menu' ); function wpse_78027_register_menu() { register_nav_menu( 'services', __( 'A list of your services. Edit the description!', 'theme_textdomain' ) ); }
Now you get an interface for the menu in
wp-admin/nav-menus.php
.Then you need a custom walker to show more than just the link text. You are lucky, this problem has been solved too. You need very simple markup, so …
/** * Custom walker to render the services menu. */ class WPSE_78027_Services_Menu extends Walker_Nav_Menu { public function start_el( &$output, $item, $depth = 0, $args = NULL, $id = 0 ) { $output .= '<li>'; $attributes = ''; if ( ! empty ( $item->url ) ) $attributes .= ' href="' . esc_url( $item->url ) .'"'; $description = empty ( $item->description ) ? '<p>Please add a description!</p>' : wpautop( $item->description ); $title = apply_filters( 'the_title', $item->title, $item->ID ); $item_output = "<a $attributes><h3>$title</h3> <div class='service-description'>$description</div></a>"; // Since $output is called by reference we don't need to return anything. $output .= apply_filters( 'walker_nav_menu_start_el' , $item_output , $item , $depth , $args ); } }
Now you have to add the pages to that menu. Do not forget to edit the description, or force that field to be visible:
And now stick it together. Open the page template PHP file where you want to use the menu and add:
wp_nav_menu( array ( 'container' => FALSE, 'depth' => 1, 'items_wrap' => '<ul id="service-menu">%3$s</ul>', 'theme_location' => 'services', 'walker' => new WPSE_78027_Services_Menu ) );
Perfect.
In your stylesheet you can style this list now without affecting any other table.
Sample code:
#service-menu { background: #aaa685; border-collapse: separate; border-spacing: 10px; display: table; width: 100%; } #service-menu, #service-menu li { border: 3px solid #e9e9e9; } #service-menu li { display: table-cell; list-style: none; padding: 10px; width: 25%; } #service-menu, #service-menu a { color: #fff; } #service-menu h3 { font: bold 1.5em/1 serif; margin: 0 0 .5em; text-transform: uppercase; } .service-description { font: .9em/1.4 sans-serif; }
Result:
Writing this answer took more time than writing the code. :)
-
Dejé caerel _Read More_,porque cuatroenlaces conelmismonombre sonmuymolestospara los usuarios de lectores depantalla,ytodoel cuadroes unenlace.I dropped the _Read More_, because four links with the same name are super annoying for screen reader users, and the whole box is a link.
- 0
- 2013-01-03
- fuxia
-
¡Tuincreíbletoscho!Estarétrabajandoen estoestanoche,sipudiera dartepuntos,lo haría (noes que losnecesites. Jaja)pero seríaparamostrarte cuánto aprecio quete tomeseltiempo detu díaparaescribiresta larga respuesta.parami.Analizaréeseproblema XYpara asegurarme de hacer lapregunta correctapara lapróxima vez.¡GRACIAS!Your amazing toscho! I'll be working on this tonight, if I could give you points I would (not that you need them. Haha) but it would be to show you how much I appreciate you taking the time out of your day to write this long answer for me. I'll look into that XY problem so I be sure to ask the correct question for next time. THANKYOU!
- 1
- 2013-01-03
- kia4567
Acabo deinstalarel sitio hace unpar de semanas y le agregué algunas cosasmáspara amigomío,sinembargo,tiene que haber unamaneramásfácil de distribuir contenidoen wordpress. Incluso loestoypasandomal yestoy codificando lamitad (o almenos agregandoestilos,mirandoel CSS,etc.)
Estoy analizandoespecíficamente los servicios (prácticamente lo únicoen estapágina deprueba) y cómo diseñarlos. Estánen tablasfeas de las que creo queincluso olvidé cómo usarlas,pero ¿de qué otramanera se supone que debo diseñar contenido comoeste? ¿Existe algún complemento queme facilite la vida (¿Premium? - He oído hablar de Tipos o Vistas,¿es unbuen complemento?).
Sinembargo,como hetrabajadoen esto hasta ahora,¿cuáles lamejormanera de obtener relleno dentro deesas celdas? Probé casitodo,peronofunciona o afecta a TODAS lastablas de lapágina (lapágina original dondeestará queestá aquí ).
He añadidoel código detablailegible aquí si quieres verlo ...