2012-02-14 56 views
1

我有一个非常基本的“功能列表 - 图像滑块”上面我在我的自定义WordPress的主题内容来实现。我想知道如何将PHP中的硬编码连接到我的'主题'。 我想“主题”滑块,这样的内容是通过“最近,帖子”或通过“类别”拉。以及我如何设置'精选图像'作为照片显示在滑块内并显示在列表区域中的多个缩略图部分中?“更换主题皮肤”我在WP滑块与PHP

这里是jQuery的截图我插件我就捡起上; enter image description here
(他们的演示破产了,就这样。)

下面是我已经实现了标记。

<div id="featured" > 
    <ul class="ui-tabs-nav"> 
     <li class="ui-tabs-nav-item ui-tabs-selected" id="nav-fragment-1"><a href="#fragment-1"><img src="images/image1-small.jpg" alt="" /><span>David King – on his True Crime thriller</span></a></li> 
     <li class="ui-tabs-nav-item" id="nav-fragment-2"><a href="#fragment-2"><img src="images/image2-small.jpg" alt="" /><span>Tips from Steve Perry</span></a></li> 
     <li class="ui-tabs-nav-item" id="nav-fragment-3"><a href="#fragment-3"><img src="images/image3-small.jpg" alt="" /><span>Tips from Chuck Berry</span></a></li> 
     <li class="ui-tabs-nav-item" id="nav-fragment-4"><a href="#fragment-4"><img src="images/image4-small.jpg" alt="" /><span>SFIRS</span></a></li> 
    </ul> 




    <!-- First Content --> 
    <div id="fragment-1" class="ui-tabs-panel" style=""> 
     <img src="images/image1.jpg" alt="" /> 
     <div class="info" > 
     <h2><a href="#" >David King – on his True Crime thriller</a></h2> 
     <p>David King is Lorem Ipsum Lorem Ipsum Lorem Ipsum...<a href="#" >read more</a></p> 
     </div> 
    </div> 
    <!-- Second Content --> 
    <div id="fragment-2" class="ui-tabs-panel ui-tabs-hide" style=""> 
     <img src="images/image2.jpg" alt="" /> 
     <div class="info" > 
     <h2><a href="#" >Tips from Steve Perry</a></h2> 
     <p>Steve Perry is Lorem Ipsum Lorem Ipsum Lorem Ipsum...<a href="#" >read more</a></p> 
     </div> 
    </div> 
    <!-- Third Content --> 
    <div id="fragment-3" class="ui-tabs-panel ui-tabs-hide" style=""> 
     <img src="images/image3.jpg" alt="" /> 
     <div class="info" > 
     <h2><a href="#" >Tips from Chuck Berry</a></h2> 
     <p>Chuck Berry is Lorem Ipsum Lorem Ipsum Lorem Ipsum...<a href="#" >read more</a></p> 
     </div> 
    </div> 
    <!-- Fourth Content --> 
    <div id="fragment-4" class="ui-tabs-panel ui-tabs-hide" style=""> 
     <img src="images/image4.jpg" alt="" /> 
     <div class="info" > 
     <h2><a href="#" >Create a Vintage Photograph in Photoshop</a></h2> 
     <p>Quisque sed orci ut lacus viverra interdum ornare sed est. Donec porta, erat eu pretium luctus, leo augue sodales....<a href="#" >read more</a></p> 
     </div> 
    </div> 
</div> 

Updated Q here, with up to date attempt, still not solved

最新的更新:仍然试图让图像在拉我试过苏尼的建议,但还是不能让他们在滑块内拉(他们最终填充外)

一些我已经试过如下:

<?php 
$i = 1; 
foreach ($posts_array as $post) : setup_postdata($post); 
<?php if (has_post_thumbnail()) { $large_image_url = wp_get_attachment_image_src(get_post_thumbnail_id(), 'large'); echo '<a href="' . $large_image_url[0] . '" title="' . the_title_attribute('echo=0') . '" >'; the_post_thumbnail('thumbnail'); echo '</a>'; } ?> 
?> 


<?php 
$i = 1; 
foreach ($posts_array as $post) : setup_postdata($post); 
$large_image_url = wp_get_attachment_image_src(get_post_thumbnail_id(), 'large');  
?> 


<?php 
    $i = 1; 
    foreach ($posts_array as $post) : setup_postdata($post); 
    $large_image_url = wp_get_attachment_image_src(get_post_thumbnail_id(), 'large'); <a href="' . $large_image_url[0] . '" title="' . the_title_attribute('echo=0') . '" > 
?> 

    <?php 
     $i = 1; 
     foreach ($posts_array as $post) : setup_postdata($post); ?> 

<?php if (has_post_thumbnail()) { $large_image_url = wp_get_attachment_image_src(get_post_thumbnail_id(), 'large'); echo '<a href="' . $large_image_url[0] . '" title="' . the_title_attribute('echo=0') . '" >'; the_post_thumbnail('thumbnail'); echo '</a>'; } ?> 
+0

虽然你认为它是基本的,但它比你想象的要多。 – 2012-02-14 21:45:47

+0

几个小时已经证明!但仍然有建议? – 2012-02-14 21:46:39

+1

试试这个开始。 http://codex.wordpress.org/Writing_a_Plugin – 2012-02-14 21:49:54

回答

2

Hi, you can user get_posts to fetch posts.

下面是代码..不..测试

<?php 
/** 
* @package WordPress 
* @subpackage Default_Theme' 

*/ 

//get_header(); ?>   
<div id="content"> 

<?php if (have_posts()) : ?> 

<!--Your slider code goes here--> 

<?php 
$args = array(
       'numberposts'  => 5, 
       'orderby'   => 'post_date', 
       'order'   => 'DESC' 
); 
$posts_array = get_posts($args); 
?>  

<div id="featured" > 
<ul class="ui-tabs-nav"> 

<?php 
$i = 1; 
foreach ($posts_array as $post) : setup_postdata($post); 
?> 

<li class="ui-tabs-nav-item ui-tabs-selected" id="nav-fragment-<?php echo $i; ?>"> 
    <a href="#fragment-1"><img src="" alt="" style="display:none;"/> 
    <span> 
     <?php the_title(); ?><br /> 
     <p class="info" style="padding-left:10px;"><?php the_excerpt(); ?></p> 
    </span> 
    </a> 
</li> 
<?php $i++; 
endforeach; ?> 
</ul> 
<?php 
$i = 1; 
foreach ($posts_array as $post) : setup_postdata($post); 
?> 

<!-- First Content --> 
<div id="fragment-<?php echo $i; ?>" class="ui-tabs-panel" style=""> 
    <img src="<?php the_post_thumbnail('slider_image'); ?>" alt="" /> 
    <div class="info"> 
    <h2><a href="<?php the_permalink(); ?>" ><?php the_title(); ?></a></h2> 
    <p><?php the_excerpt(); ?><a href="<?php the_permalink(); ?>" >read more</a></p> 
    </div> 
</div> 
<?php $i++; endforeach; ?> 


</div> 

<!--Your slider code goes here--> 
<!-- End Featured Lists Image Slider -->   

<?php endif; ?> 
+0

谢谢,但用了你的代码在31行 – 2012-03-19 12:23:58

+0

我已经编辑解析错误代码请现在检查 – 2012-03-19 13:04:53

+1

我测试了这个解决方案,它可以工作,我尽可以测试它,即我无法测试javascript部分。唯一的小错误是第一个列表没有结束ul标记。我会编辑它,但我没有编辑权限。 – Gohn67 2012-03-22 13:47:32

2

这是我会怎么做。

您需要在您要使用的职位主要有两个回路 - 一个创建选项卡,一个创建内容。为避免执行两次数据库查询,请缓存数组中一个查询的帖子,并在该数组上使用foreach循环。

使用自定义查询来获取你想要在你的滑块使用POST对象:http://codex.wordpress.org/Class_Reference/WP_Query

免责声明:这不会逐字工作,但应该给你的框架需要

<?php 

$post_data = array(); 

// Use a custom query to get the posts you want for your slider 
$the_query = new WP_Query($args); 

// The Loop 
while ($the_query->have_posts()) : $the_query->the_post(); 

    $post_data[] = $post; 

endwhile; 

// Reset Post Data 
wp_reset_postdata(); 

?> 

<div id="featured" > 

    <ul class="ui-tabs-nav"> 

    <?php 
    foreach($post_data as $key => $post){ 

     // Out put the markup + data from the $post object that you need for your tabs 

    } 
    ?> 

    </ul> 

    <?php 
    foreach($post_data as $key => $post){ 

     // Out put the markup + data from the $post object that you need for your slider fragments 

    } 
    ?> 

</div>