17

WordPress で colorbox を使用してオーバービュー関数を作成しようとしています。

少し説明させてください。WordPress では、ページには次のコードを介してクエリされる投稿があります。

$lastposts = get_posts( $args );
foreach($lastposts as $post) : setup_postdata($post); 
get_template_part( 'content', get_post_format() ); 
endforeach;

これにより、WordPress データベースにあるすべての投稿が取得されます。各投稿は製品なので、これにコードを追加して、各投稿に値を設定する方法があるかどうかを知りたいです。誰かが投稿画像をクリックすると、その投稿のタイトルが送信されます。その特定の製品の概要テンプレート (私が作成するもの) を取得できます。

アップデート:

画像がクリックされると開くjQueryは次のとおりです。

<link media="screen" rel="stylesheet" href="<?php echo get_template_directory_uri(); ?>/js/colorbox.css" />
<script src="<?php echo get_template_directory_uri(); ?>/js/jquery.colorbox-min.js" type="text/javascript"></script>

<script type="text/javascript">
    $(function()
    {
        $('.item-post a').colorbox({opacity:0.3, href:"../overviewa512454dzdtfa"});
    });
</script>

画像が関連付けられている投稿のタイトルを、カラーボックスで開いているファイルに送信したい。

4

2 に答える 2

3

rel="<?= $post['title'] ?>"各リンクに投稿のタイトルが付くように、リンクにを入れます。(" が WP Post の適切な属性でない場合は申し訳ありません$post['title']が、見つかります。) 次に、JavaScript で、次のように URL にタイトルを渡します。

<script type="text/javascript">
    $(function()
    {
        $('.item-post a').bind('click',function() {
            event.preventDefault();
            var product_title = $(this).attr('rel');
            colorbox({opacity:0.3, href:"../overviewa512454dzdtfa?title=" + product_title});
        });
    });
</script>

タグ内で渡すタイトルを URL エンコードするかrel="、カラーボックスに渡すときに JavaScript でエンコードする必要があります。

次に、概要ページでは、 でタイトルにアクセスできます$_REQUEST['title']

于 2012-12-24T21:49:27.930 に答える
1

content-page.php、content-aside.php などは、コード内の次の行により、ループ内で製品を出力するために WP テーマで使用されるファイルです。

get_template_part( 'content', get_post_format() ); 

基本的には、これらのファイルを開いて、各投稿の内容を出力する部分で、投稿のIDを使って投稿画像をアンカーで囲むだけです( <a href="#" id="post-<?php the_ID(); ?>">...

次に、jQuery クエリで ID を使用して、適切な概要を簡単に「ターゲット」にすることができます...

于 2012-12-19T08:57:28.553 に答える