我有一个视频库,所有的标题都是由php
. 它们来自我的Wordpress媒体库的附件标题。
然而,这些视频的lightbox是用javascript定制的。我怎样才能把php
中的标题iframe
markup
?
PHP-需要使用$attachment_data[\'title\']
:
<?php
$the_query = new WP_Query(array( \'post_type\' => \'attachment\',\'category_name\' => \'video\'));
while ( $the_query->have_posts() ) : $the_query->the_post();?>
<?php $attachment_data = wp_prepare_attachment_for_js( $attachment->ID );
echo\'<div class="title"><h2>\'.$attachment_data[\'title\'].\'</h2></div>\';?>
<?php endwhile; wp_reset_postdata();?>
Javascript:
$(\'.video\').Lightbox({
type: \'iframe\'
iframe: {
markup: \'<div class="lightbox_container">\'+
\'<iframe class="iframe" frameborder="0" allowfullscreen></iframe>\'+
\'<div class="title"> PHP GOES HERE </div>\'+
\'</div>\',
callbacks: {
markupParse: function(template, values, item) {
values.title = item.el.attr(\'title\');
}
});
SO网友:cjbj
首先,不要重复您的php,而是将所有内容组装成一个字符串,比如$titlestring
.
接下来,让这个字符串可供javascript访问(slug是您用来注册脚本的):
$params = array (
\'titlestring\' => $titlestring,
);
wp_localize_script (\'your-script-slug\', \'IframeTitle\', $params);
最后,访问脚本中的变量:
\'<div class="title">\' + IframeTitle.titlestring + \'</div>\' +