繁体   English   中英

在WordPress中显示自定义帖子类型

[英]Displaying custom post type in wordpress

我正在尝试在wordpress中显示自定义帖子类型。 我可以显示它们,但是我想根据商品类型调整它们的大小:

我的代码如下:

<?php 
$args = array('post_type' => 'package','package-category'=>'Kenya',  'posts_per_page'=>6 );
    $loop = new WP_Query( $args );
    while ( $loop->have_posts() ) : $loop->the_post();?>

<?php 
    $item_type == '1/4 Grid Style';
    $item_class = $package_div_size_num_class[$item_type]['class'];
$item_size = $package_div_size_num_class[$item_type];

    function print_package_mythumbnail( $post_id, $item_size, $last_minute = 'normal-type',        $last_text = 'Read More' ){
    $thumbnail_id = get_post_thumbnail_id( $post_id );
    $thumbnail = wp_get_attachment_image_src( $thumbnail_id , $item_size );
    $alt_text = get_post_meta($thumbnail_id , '_wp_attachment_image_alt', true);
    if( !empty($thumbnail) ){
        echo '<div class="package-media-wrapper gdl-image">';

        echo '<a href="' . get_permalink() . '">';
        echo '<img src="' . $thumbnail[0] .'" alt="'. $alt_text .'"/>';
        echo '</a>';
        echo '</div>';  // package-media-wrapper
    }   
}
$thumbnail_id = get_post_thumbnail_id( $post_id );
    $thumbnail = wp_get_attachment_image_src( $thumbnail_id , $item_size );
    $alt_text = get_post_meta($thumbnail_id , '_wp_attachment_image_alt', true);
    if( !empty($thumbnail) ){
        echo '<div class="package-media-wrapper gdl-image">';

        echo '<a href="' . get_permalink() . '">';
        echo '<img src="' . $thumbnail[0] .'" alt="'. $alt_text .'"/>';

        if( !empty($last_minute) && !empty($last_text) ){
            echo '<div class="package-ribbon-wrapper">';
            echo '<div class="package-type ' . $last_minute . '">';
            echo $last_text;
            echo '</div>';
            echo '<div class="clear"></div>';
            echo '<div class="package-type-gimmick"></div>';
            echo '<div class="clear"></div>';
            echo '</div>';
        }
        echo '</a>';

        echo '</div>';  // package-media-wrapper
    }   

?>

其中$item_type == '1/4 Grid Style'定义为:

$package_div_size_num_class = array(
    "1/4 Grid Style" => array(
        "no-sidebar"=>"400x300", 
        "one-sidebar"=>"400x400", 
        "both-sidebar"=>"400x400", 
        "class"=>"gdl-package-widget"
    )
)

如何根据项目类型调整缩略图的大小?

使用CSS快速修复(为图像创建div并设置尺寸。)

在你的style.css中

.package-media-wrapper{
   min-width: 30%;
   max-width: 30% !important;
}

.package-image{
   width: 100%;
}

您的问题有点令人困惑,您是否正在尝试检测正在显示多少侧边栏? 在大多数模板中,这是在页面模板中的代码末尾设置的吗? 要更改html,您可以检测到正在使用的模板

 if(is_page_template('2column')) {
     $imagehtml= ............;
 } else if (etc) {}

除此之外,您正在查看查询以获取包含div的属性(在您的情况下,我想是列大小吗?)

 jQuery(document).ready(function() {
  var width=jQuery('.package-media-wrapper').width();

  if(width===300px) {
    jQuery('.package-image').width('300px');
  }
 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM