hk
  • 0
Новичок

Как создать собственное представление сетки

  • 0

Я хотел бы создать представление сетки, которое можно использовать для перечисления элементов с миниатюрой, основным заголовком описания, подзаголовком и, возможно, сведениями о ценах. Это не обязательно будет для электронной коммерции, поскольку изначально корзины покупок не будет. Подобно сообщению, щелчок по элементу приведет вас к полному «сообщению» для этого элемента с дополнительной информацией.

Чтобы понять, о чем я думаю, посмотрите здесь: http://www.powerzoneequipment.com/inventory_search.asp?category=engines

Итак, вот мои вопросы:

1) Что-то подобное уже существует?

2) Каковы требования для создания чего-то подобного? Должен ли это быть плагин в сочетании с пользовательской темой, которая поддерживает это? Или это можно сделать с помощью пользовательской темы и пользовательского типа сообщения?

Я понимаю, что то, что я прошу, может быть функциональностью, более типичной для чего-то вроде Drupal. Однако мне любопытно, насколько сложно было бы получить такой тип отображения в WordPress.

Share
  1. Это не так уж и сложно, просто стилизуйте цикл вашей категории в таблице примерно так:

    <table>
        <tr>
            <th>Photo</th><th>Item Brand, Model</th><th>Description</th><th>PSI</th><th>GPM</th><th>RPM</th><th>HP</th><th>Stock No.</th>
        </tr>
        <?php 
        while (have_posts()){
            the_post();
            ?>
            <tr>
                <td>
                    <?php
                    if(has_post_thumbnail()) {
                        the_post_thumbnail();
                    } else {
                        echo '<img src="'.get_bloginfo("template_url").'/images/img-default.png" />';
                    }
                    ?>
                </td>
                <td>
                    <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
                </td>
                <td>
                    <?php the_excerpt(); ?>
                </td>
                <td>
                    <?php echo get_post_meta($post->ID,'PSI',true); ?>
                </td>
                <td>
                    <?php echo get_post_meta($post->ID,'GPM',true); ?>
                </td>
                <td>
                    <?php echo get_post_meta($post->ID,'RPM',true); ?>
                </td>
                <td>
                    <?php echo get_post_meta($post->ID,'HP',true); ?>
                </td>
                <td>
                    <?php echo get_post_meta($post->ID,'Stock_No',true); ?>
                </td>
            </tr>
            <?php
        }
        ?>
    </table>
    

    Он использует миниатюру сообщения в качестве изображения, имя в качестве заголовка и ссылку на «полное сообщение», отрывок в качестве описания и предполагает, что у вас есть настраиваемые поля с именами: PSI, GPM, RPM, HP и Stock_No.

    Теперь, после того, как это будет сделано, вы можете использовать пользовательский тип сообщения, скажем, вы называете его продуктами и отличаете его от обычных сообщений, используя register_post_type.

    add_action('init', 'custom_products_post_type_init');
    function custom_products_post_type_init() 
    {
      $labels = array(
        'name' => _x('Products', 'post type general name'),
        'singular_name' => _x('Product', 'post type singular name'),
        'add_new' => _x('Add New', 'Product'),
        'add_new_item' => __('Add New Product'),
        'edit_item' => __('Edit Product'),
        'new_item' => __('New Product'),
        'view_item' => __('View Product'),
        'search_items' => __('Search Products'),
        'not_found' =>  __('No Products found'),
        'not_found_in_trash' => __('No Products found in Trash'), 
        'parent_item_colon' => '',
        'menu_name' => 'Products'
    
      );
      $args = array(
        'labels' => $labels,
        'public' => true,
        'publicly_queryable' => true,
        'show_ui' => true, 
        'show_in_menu' => true, 
        'query_var' => true,
        'rewrite' => true,
        'capability_type' => 'post',
        'has_archive' => true, 
        'hierarchical' => false,
        'taxonomies' => array('category', 'post_tag'),
        'supports' => array('title','editor','author','thumbnail','excerpt','comments','custom-fields')
      ); 
      register_post_type('product',$args);
    }
    

    и если вы делаете это таким образом, вам просто нужно добавить простой аргумент для запроса над циклом, используя query_post, чтобы сообщить ему, что вы используете свой собственный тип сообщения:

    query_posts(‘post_type=’продукт’);

    надеюсь это поможет

    • 0
    • Спасибо. Мне это и вправду нравится. Тем не менее, это не помогает мне получить большую часть картины того, как я создам что-то, что содержит несколько настраиваемых столбцов и автоматически отображается в стиле сетки, не заставляя пользователя выбирать свой стиль отображения. Кроме того, я предполагаю, что пользователь будет загружать полные изображения, но в представлении сетки будут просто отображаться миниатюры.

      • 0
  2. Ознакомьтесь с этим руководством: http://designm.ag/tutorials/jquery-display-switch/

    Его можно довольно легко интегрировать в WordPress, как демонстрирует эта тема:
    http://s51370.gridserver.com/x/

    • 0

Оставить ответ

You must login to add an answer.