¿Cómo agregar imagen destacada para categoría (sin plugin)?

7 feb 2017, 19:29:13
Vistas: 56.5K
Votos: 8

Estoy buscando plugins que agreguen la opción de imágenes destacadas para categorías, pero no cómo programarlo uno mismo.

0
Todas las respuestas a la pregunta 4
0

Me había pasado por alto que puedes agregar campos fácilmente a los términos de taxonomía con Advanced Custom Fields: https://www.advancedcustomfields.com/resources/get-values-from-a-taxonomy-term/

8 feb 2017 00:55:13
0

No todo necesita un plugin.

Si quieres añadir un campo simple para agregar una URL de imagen, usa las funciones de WordPress add_term_meta(), update_term_meta() y get_term_meta().

function addTitleFieldToCat(){
    $cat_title = get_term_meta($_POST['tag_ID'], '_pagetitle', true);
    ?> 
    <tr class="form-field">
        <th scope="row" valign="top"><label for="cat_page_title"><?php _e('Título de la página de categoría'); ?></label></th>
        <td>
        <input type="text" name="cat_title" id="cat_title" value="<?php echo $cat_title ?>"><br />
            <span class="description"><?php _e('Título para la categoría'); ?></span>
        </td>
    </tr>
    <?php

}
add_action ( 'edit_category_form_fields', 'addTitleFieldToCat');

function saveCategoryFields() {
    if ( isset( $_POST['cat_title'] ) ) {
        update_term_meta($_POST['tag_ID'], '_pagetitle', $_POST['cat_title']);
    }
}
add_action ( 'edited_category', 'saveCategoryFields');

fuente: respuesta de Luke Simmons en: Agregar campo personalizado a Categoría

24 feb 2022 11:17:46
0

Ya existen algunas soluciones para agregar campos personalizados a taxonomías. Ver: Agregar campo personalizado a Categoría

Verás una actualización de 2016 cerca del final que debería ayudarte.

Con esto puedes simplemente copiar una URL de imagen una vez que la hayas subido a tu Biblioteca Multimedia, pero supongo que quieres un Modal de Subida de Medios (ventana emergente) utilizando wp.media, ¿verdad? Tendrás que hacer eso con javascript. Esta publicación explica varios métodos para instanciar un modal de carga de medios: https://mikejolley.com/2012/12/21/using-the-new-wordpress-3-5-media-uploader-in-plugins/

7 feb 2017 21:22:21
0
<?php

add_action ( 'category_edit_form_fields', 'addTitleFieldToCat', 10, 2 );
function addTitleFieldToCat( $tag, $taxonomy ) {
    $cat_title = get_term_meta( $tag->term_id, '_pagetitle', true );
    ?>
    <tr class="form-field">
        <th scope="row" valign="top"><label for="cat_page_title"><?php _e('Título de la página de categoría'); ?></label></th>
        <td>
            <input type="text" name="cat_title" id="cat_page_title" value="<?php echo $cat_title ?>"><br />
            <p class="description"><?php _e('Título para la categoría'); ?></p>
        </td>
    </tr>
    <?php
} 

add_action ( 'edited_category', 'saveCategoryFields' );
function saveCategoryFields() {
    if ( isset( $_POST['cat_title'] ) ) {
        update_term_meta( $_POST['tag_ID'], '_pagetitle', $_POST['cat_title'] );
    }
}

Modificaciones de código sugeridas por el usuario @talk-nerdy-to-me - https://wordpress.stackexchange.com/users/122776/talk-nerdy-to-me

4 mar 2022 12:00:53