Cómo utilizar categorías personalizadas en WordPress 3.0
¿Qué es una función de clasificación personalizada?
Las funciones de clasificación, como su nombre indica, son funciones que utilizan diferentes métodos para clasificar cosas. Como todos sabemos, la clasificación de una cosa será muy diferente según los diferentes estándares de clasificación. Este tutorial utilizará una computadora de escritorio como ejemplo. Los resultados variarán según los siguientes criterios completamente diferentes:
Capacidad de almacenamiento aleatorio
El tamaño del disco duro
.Velocidad de CPU
Tipo de CPU
Sistema operativo instalado
Etc.
Historial de categorías de WordPress
Clasificación de categorías
Antes de WordPress 2.3, solo había una función de clasificación más común.
Se llama “categoría” del artículo. Esto está bien para un blog porque puedes crear una categoría de nivel superior "Computadoras de escritorio" y una subcategoría "RAM" y eso también está bien.
También hay subcategorías: "Menos de 1 GB", "1 GB", "1 GB", "2 GB a 4 GB"
Espera un momento. También puede crear una segunda subcategoría "Sistemas operativos" en "Computadoras de escritorio", cuyas subcategorías serán "Windows XP", "Mac OS" y "Rojo".
Hat", "Ubuntu", etc.
Cuando un sistema permite subdividir una categoría en diferentes subcategorías, lo llamamos jerarquía. En WordPress2. En sistemas anteriores, el Lo mejor que puedes hacer es crear una enorme jerarquía de categorías, donde el nivel superior represente el grupo de categorías más grande.
Categorías de etiquetas
WordPress 2.3. Se agrega una nueva categoría, llamada Etiqueta. Las categorías anteriores generalmente estaban pensadas previamente y eran específicas para la clasificación del contenido del sitio web, mientras que las etiquetas son más libres y se puede decir que son un método improvisado para clasificar el contenido.
Por ejemplo, al escribir un artículo sobre. computadoras de escritorio, la etiqueta le permite ingresar una o más palabras clave, como "juego", "función tivo", "ventilador ruidoso", etc. Es posible que dichas palabras clave no encajen en la categorización de todo el contenido del sitio, pero brindan una Categorización alternativa para un artículo para que los futuros visitantes del sitio puedan encontrarlo fácilmente.
Todos los artículos etiquetados "Tivo Features" Sin embargo, la libertad de etiquetas no nos ayuda a establecer un sistema de clasificación fijo basado en el funcionamiento. valores de sistema y tipo de CPU Debido a que las etiquetas son unidimensionales, no se permite ninguna jerarquía.
Clasificación personalizada de un solo nivel
En WordPress 2.8, puede agregar un esquema de clasificación personalizado ligeramente. modificando el código del sitio web De esta manera, puede crear un esquema de clasificación personalizado que contenga todas las listas de artículos "operaciones". y compararlo con otro artículo que contenga todos los "Sistemas operativos".
La lista de artículos para "Memoria de acceso aleatorio" se enumera por separado. Por supuesto, también puede crear otras listas de artículos similares. Sin embargo, no puede tener una jerarquía inherente como las taxonomías de "categorías" comunes.
Totalmente jerárquica personalizada. taxonomías
Finalmente, WordPress 3 puede tener un nivel completo. Categorías personalizadas. Puede ver lo poderosa que es esta categoría completamente personalizada. Tomando el sistema operativo como ejemplo, puede colocar todas las diferentes variantes de ventana. categoría principal de la ventana, cuando los usuarios seleccionan el sistema operativo Windows, si solo quieren buscar, pueden ver todos los artículos relacionados
Para obtener información sobre las computadoras con Windows XP, puede seleccionar artículos en Windows XP.
Crear categorías personalizadas
Editar el archivo funciones.php del tema
WordPress 3 no puede crear categorías personalizadas en el fondo de administración. Si no está utilizando un complemento para definir una categoría personalizada la primera vez, deberá agregar algo de código al archivo funciones.php de su tema, lo cual no es difícil. Siga las instrucciones a continuación.
Busque el archivo "functions.php" en el directorio del tema. Supongamos que utiliza el tema predeterminado "veinte" de WordPress 3.0 y WordPress está instalado en un directorio llamado "wp". , entonces la ruta al archivo funciones.php es:
[website_root]/WP/WP-content/themes/twenty ten/functions PHP
Agregar categorías al código<. /p>
Aún tomando la computadora de escritorio como ejemplo, necesitamos agregar categorías como "Memoria de acceso aleatorio", "Disco duro" y "Sistema operativo" respectivamente. Aquí solo se agregan las categorías en sí, lo que significa que son como un "contenedor vacío" después de la configuración. Debe administrar diferentes categorías por el nombre del panel de administración, como "Windows XP".
Paso 1: Crea todas las categorías usando una función.
Primero, necesitas crear una función para crear todas las categorías requeridas. Esta función se llama "build_taxonomy". Agregue esta función en la parte inferior del archivo funciones.php:
Función build_taxonomies() {//El código que define la taxonomía se escribirá aquí}
Paso 2: Definir la taxonomía
p>Luego, para cada categoría que necesitemos crear, debemos habilitar una función de WordPress con los parámetros correctos. La siguiente es una descripción de la función y sus parámetros importantes relacionados.
register_taxonomy('internal_name','object_type',array('hierarchical' =>
{true|false},'label' =>nombre legible por humanos ', 'query_var' = & gt
{true|false}, 'rewrite' = >{ true | false }));
Internal_name: en WordPress, cómo llamar a esta taxonomía en la base de datos y los archivos de plantilla se implementan a través de esta función.
Tipo_objeto: ¿Qué tipo de contenido puede clasificar esta clasificación? Los valores posibles son: "Publicaciones, Páginas y Enlaces".
Luego viene un conjunto de parámetros opcionales. Este tutorial utiliza los parámetros más importantes; también se pueden encontrar otros parámetros en la página oficial de referencia de funciones/register_taxonomy Codex. Los parámetros que usaremos son:
Rating: Si se establece en "True", significa que esta taxonomía tiene una función de calificación, al igual que la clasificación de "categorías" de WordPress. Por otro lado, si se establece en 'falso', será tan flexible como una etiqueta, sin restricciones jerárquicas.
Etiqueta: Es una etiqueta de usuario visible para el usuario.
Query_var: si se establece en "verdadero", luego de seleccionar esta categoría, podemos dejar que WordPress seleccione artículos relacionados por nosotros. Por ejemplo, según la clasificación del sistema operativo, si selecciona "Windows", WordPress enumerará todos los artículos en Windows.
Reescribir: si se establece en "Verdadero", WordPress utilizará direcciones URL amigables al navegar por las páginas. Por ejemplo, la dirección URL de la página de lista de artículos que aparece después de seleccionar el sistema operativo Windows será así:/sistema_operativo/windows.
El código para agregar la clasificación del sistema operativo es el siguiente:
register_taxonomy('operative_system','post', array(' jerarchical' = & gt; yes, p>
label '=>operating system','query_var'=>true,'rewrite'=>true));
Agregue el código anterior a la cláusula anterior de la función "build_taxonomy" .
Más información:
Ver aquí.
Paso 3: Llama a la función de creación de categorías.
También necesitamos agregar algunas líneas de código al archivo funciones.php para ejecutar la función "build_taxonomy".
add_action('init','build_taxonomies',0);
Puedes agregar este código en cualquier lugar, pero normalmente es mejor escribirlo antes de la función que deseas llamar. el código se vuelve así:
//Código de clasificación definido por el usuario add_action ('init', 'build_taxonomy', 0);
Función build_taxonomies(){ Register_taxonomy
(' sistema_operativo ', ' post ', array ( ' jerárquico ' = > verdadero, ' etiqueta ' = & gt
sistema operativo ', ' query_ var ' = & gtTrue, 'override' = & gtTrue));}
Agregar categorías a nuevas categorías
Agregue la categoría "Sistema operativo" correctamente a las funciones. Después de instalar php, aparecerá una nueva entrada de categoría de "Sistema operativo". Debe aparecer en la opción "Artículo" del fondo de gestión. Haga clic en el nombre de la categoría para agregar la categoría requerida para editar.
Después de agregar las categorías requeridas como se muestra en la figura anterior, puede editar la categoría del sistema operativo tal como edita las categorías de artículos de uso común.
Agregar más categorías
Si necesita agregar las categorías de "RAM" y "unidad de disco duro", simplemente siga el ejemplo de "sistema operativo" anterior y agregue el siguiente código a En el archivo funciones.php:
register_taxonomy('ram','post',array('hierarchical' = & gt; sí,
label ' = & gt' RAM ' , 'query _ var ' = & gt true, 'rewrite' = & gt true));
register_taxonomy( 'hard_drive ', ' post ', array(' jerarchical ' = & gt; true ,
label '=>hard','query_var'=>true,'rewrite'=>true));
Después de completar, funciones.php El código en el archivo debería verse así:
//Código de taxonomía definido por el usuario add_action ('init', 'build_taxonomy', 0);
Función build_ taxonomías(){ Register_taxonomy('operating_system','post',
array('jerarchical' =>true,'label' =>operating system','query_var' = & gt True,
Reescribir ' = & gt True)); ', ' post ', array ( ' jerarchical ' = & gt; True,
label ' = & gtRAM ', ' query_var ' = & gt true, 'rewrite' = & gt true));
register_taxonomy( 'hard_drive ', ' post ', array(' hierarchical ' = & gt; Sí,
label ' = & gthard', 'query_var' = & gttrue, 'reescribir ' = & gttrue));}
Publicar artículos utilizando nuevas taxonomías
Al crear un nuevo artículo, encontrará nuevas opciones de categorías en la página donde edita el artículo, para que Puede rotar a través de cualquier clasificación que necesite.
Mostrar diferentes categorías de artículos
Lo que se ha hecho hasta ahora no supone una gran mejora para los visitantes del sitio. Esperamos mostrar la categoría a la que pertenece un artículo según una determinada clasificación, al igual que la categoría y etiqueta del artículo.
Para lograrlo, necesitamos realizar algunas mejoras.
Mostrar categorías debajo de cada categoría en la página.
En veinte y muchos otros temas, las categorías y etiquetas del artículo aparecerán debajo del texto. Por lo tanto, planeamos agregar una categoría antes de las categorías y etiquetas a las que pertenece el artículo si está categorizado por una categoría personalizada.
Para lograr esto, necesitamos modificar el archivo de plantilla "single.php", que generalmente se llama para mostrar un artículo. La ruta al archivo single.php.
Es: [website_root]/WP/WP-content/themes/twenty ten/single PHP.
Paso 1: Descubre dónde añadir el código.
Abra el archivo single.php y busque la siguiente línea de código:
& ltdiv class="entry-utility "
Lo que le precede es:
p>& ltdiv id="nav-below "
En el tema de Twentyten, el div contiene la categoría, las etiquetas, el enlace permanente y otros datos del artículo actual. Agregaremos información de clasificación personalizada delante de este div.
Paso 2: Obtener la información de clasificación del artículo actual.
Complete algunas variables para contener la salida de información de clasificación y
la diferente información de clasificación que podríamos esperar encontrar.
<? PHP // Si hay información de clasificación personalizada, se mostrará.
//Crear contenido de salida $taxo_text =
//Variable para almacenar una lista de todas las clasificaciones posibles
//Comprueba la categoría "sistema operativo"
$OS_list = get_the_term_list($post->ID,'Sistema operativo','
<strong>Sistema operativo:</ strong>', ', ', '' ); p>
Aquí necesitas llamar a la función de WordPress "get_the_$TERM" con los siguientes parámetros:
$ post- >; ID del artículo actual
' Sistema_operativo ': nuestra clasificación personalizada de destino se utiliza para consultar si el artículo actual tiene una categoría definida como "'sistema_operativo'".
Sistema operativo: si se devuelve un valor numérico, debemos anteponerlo con esta cadena.
Si se devuelven varios valores, debemos utilizar este símbolo para separarlos.
": Si no hay ningún valor de retorno, queremos agregar esta cadena después. De esta manera, no hay necesidad de agregar nada después del resultado.
Del mismo modo, puede procesar las otras dos categorías:
$ram_list = get_the_term_list($post->ID,'ram','<strong>RAMOptions:
& lt/strong>', ', ' , '' );$ HD_list = get_the_term_list($ post->ID,'Disco duro','
& ltstrong>Opciones de disco duro:</strong>', ', ', '' );
Más información:
Ver aquí
Paso 3: Formatear los resultados de la categoría (si los hay)
Primero, verifica si los hay. categorías bajo estas tres categorías, agregue esta información de categoría y cadenas a los resultados de salida para la salida
//Agregue la lista del sistema operativo si este artículo está etiquetado if('!= $os_list)<. /p>
{ $taxo_text = " $os_list &. ltbr/>\n "}
//Si este artículo está etiquetado if('!= $ram_list)
{ $taxo_text.= " $ram_list & ltbr/>;\n ";}
//Agregar lista HD si esta publicación está etiquetada if('!= $hd_list)
{ $taxo_text.= " $ hd_list<br/>\n "}
Paso 4: Mostrar los resultados de la categoría (si los hay)
Compruebe si se generará información de clasificación después de completar el pasos anteriores. Si la información de la categoría existe, generaremos los resultados a través de la categoría div.
//Información de clasificación de salida (si la hay)
//Nota: Ni siquiera abriremos un div si no hay nada dentro.
if ('!= $taxo_text ) {? & gt& ltdiv class="entry-utility " >>p>
& lt? php eco $taxo_texto? ></div><? } // endif? & gt
Paso 5: Comprueba los resultados.
Al mirar el artículo, encontrará que todas las categorías de la categoría personalizada se mostrarán en la parte inferior del artículo.
Explore la lista de artículos por categorías categorizadas personalizadas.
Mediante las operaciones anteriores, si cada artículo se clasifica en una categoría bajo la clasificación personalizada, se mostrarán las categorías relacionadas. Al enumerar las categorías de la clasificación personalizada, también
tendrá un enlace que lo llevará a una lista de todos los artículos bajo una determinada categoría. Por ejemplo, haga clic en el enlace "Mac OS" al lado de la categoría del sistema operativo. En teoría, se mostrará frente a usted una lista de todos los artículos de la categoría del sistema operativo "Mac".
Sin embargo, en WordPress 3.0, no es tan perfecto como en teoría. Todavía necesitamos personalizar un archivo de plantilla para implementar el archivo gramatical. En WordPress, los lectores tenemos
Podemos explorar todos los artículos que especifican una determinada categoría y una determinada etiqueta. Por supuesto, también esperamos que los lectores puedan ver todos los artículos de una determinada categoría en todas las categorías personalizadas.
Para lograr esto, necesitamos crear un archivo de plantilla llamado "taxonomy.php", que se puede usar en cualquier momento cuando necesitemos enumerar artículos de una determinada categoría en una categoría personalizada.
Paso 1:
Abra el archivo de plantilla "category.php", copie y pegue su contenido en un archivo recién creado llamado "taxonomy.php" y se guarda taxonomy.php. en el directorio del tema:
[website_root]/WP/WP-content/themes/twenty ten/taxonomy. PHP
Paso 2: Obtenga la clasificación actual Información sobre las categorías del sistema.
Necesitamos poder obtener información sobre las taxonomías enumeradas en el archivo taxonomy.php. Es posible que necesite conocer el nombre y la descripción de una categoría de la taxonomía.
Siempre y cuando esté en
$term = get_term_by( 'slug ', get_query_var( 'term '),
get_query_var(' taxonomía ') ;
Paso 3: Mostrar el nombre de la categoría y la descripción
Es necesario cambiar el nombre de la página para que los visitantes sepan lo que están viendo. comenzamos con el archivo de plantilla categoría.php, podemos hacer algunas modificaciones al código que imprime el nombre de la categoría, y luego podemos mostrar el nombre de la página e incluso la descripción que necesitamos
Modifique el siguiente código en. el archivo categoría.php:
printf(__('Category Archive: %s ', 'twentyten '), '<"span>".
single_cat_title(' ', false ).</span> ');
Cámbielo a:
printf(__('Publicaciones clasificadas en %s', 'veinte'),
& lt "span>". $term_name.</span>');
Esto primero modifica el texto estático y luego inserta el nombre de la categoría.
Agregue el siguiente código:
if ('!= $term_descr){ echo "<p>$term_descr</p>\n ";}
Si esta categoría tiene una descripción, la descripción aparecerá debajo del título.
Después de completar las modificaciones en taxonomy.php, visite el siguiente artículo otorgado a una categoría bajo una clasificación personalizada y verá la categoría personalizada en la parte inferior del texto. Simplemente haga clic en estas categorías y verá una lista de artículos para esa categoría.