Visualización de widgets

2

Durante el desarrollo del tema, entiendo cómo crear widgets básicos dentro del archivo functions.php .

Sin embargo, cuando se trata de mostrar el widget dentro de un tema, hay una forma preferida de mostrarlos: principal, ¿cuáles son los beneficios de usar the_widget() en función de la función dynamic_sidebar() ?

    
pregunta andrewdcato 23.03.2015 - 17:52

2 respuestas

2

the_widget() se usa para mostrar un widget específico fuera de una barra lateral. Para ser honesto, esta función no tiene un propósito valioso ya que necesita codificar los parámetros del widget $instance , esto significa que tendrá que cambiar manualmente el código cada vez que necesite cambiar algo. Tanto para dynamica. Simplemente sería más fácil simplemente codificar una función personalizada y luego llamarla a su plantilla cuando sea necesario. Será más rápido y mucho más fácil de usar

Mantén los widgets dentro de las barras laterales, ya que son dinámicos y se pueden cambiar sin tocar el tema o el código del complemento. Preferiría codificar veinte barras laterales y agregarlas en lugares estratégicos que utilizar una instancia codificada de the_widget()

    
respondido por el Pieter Goosen 23.03.2015 - 18:20
5

Mediante el uso de dynamic_sidebar() puede cambiar / editar los widgets en el área de widgets de la configuración de apariencia. Si usa the_widget() , codifíquelo directamente en la plantilla, por lo que deberá modificar el código para cambiar lo que se muestra.

Ambos tienen sus usos. Demasiadas barras laterales tienden a saturar el área de widgets, pero es muy buena para los usuarios que no quieren meterse con el código (o si intercambias la configuración de widgets / widgets a menudo).

The_widget no depende de tener una barra lateral, por lo que también tiene usos si tiene muchos widgets personalizados que usa alrededor de sus plantillas, como en el pie de página, por ejemplo.

Pero no creo que haya beneficios directos de usar uno frente a otro, aparte de la facilidad de uso.

EDITAR: aunque estoy de acuerdo con Pieter, creo que hay al menos casos marginales en los que puedes usar the_widget() . Por ejemplo, un proyecto en el que estoy trabajando actualmente he creado un widget RSS personalizado para mostrar iconos de acuerdo con los tipos de artículos de toda la red. (Tenemos varios sitios que están todos vinculados). También tenemos estas fuentes RSS en la parte inferior de la página que muestran el contenido de nuestros otros sitios y no veo ningún uso en la codificación de una función personalizada con la misma funcionalidad cuando ya tengo un widget en funcionamiento.

Y sí, podría usar una barra lateral para mostrar estos widgets, pero como tenemos varias personas que actualizan los sitios y no todos son tan expertos en tecnología, pensé que era mejor que el área de barras laterales tuviera básicamente los contenedores que necesitaban editar. .

Así que utilicé the_widget para evitar el código duplicado y para mantener la interfaz a otros administradores. Pero como bien dijo Pieter, es mejor que siempre estés usando wigdets con barras laterales como se pretende.

    
respondido por el jimihenrik 23.03.2015 - 18:10

Lea otras preguntas en las etiquetas