酷,现在你知道js很好了。接下来要检查条件语句是否正常工作。is\\u single()仅在贴子页上返回true。is\\u singular()将在帖子、页面和附件上返回true。您可能需要在功能中全球化$post。在函数中添加一些回声只会帮助您看到它在哪里中断。
出于测试目的,我会在条件测试中添加“| | 1==1”,使其始终为真。然后,您可以通过查看源代码来确保正确打印脚本的路径。在头部找到它们并单击它们,这将显示脚本源或404页面的源。如果得到404,则需要在排队函数中修复location参数。
if (is_single() && strpos($post->post_content,\'class="fancy"\') !== false || 1==1)
{
//this is now always true so scripts will be printed on all pages
此外,我会将该函数挂接到wp\\u head上,而不是wp\\u print\\u样式,因为您也在添加脚本。因此,请尝试以下测试。既然您现在知道js正在工作,那么实际上只是缩小php不工作的可能性的问题。
function loadFancyBox()
{
//first find out if you need to globalise $post;
echo \'1\' . $post->post_title;//if this displays you don\'t need to
global $post;
echo \'2\' . $post->post_title;//if only this displays you do need to
if (is_single() && strpos($post->post_content,\'class="fancy"\') !== false || 1==1)
{
echo \'hello\';
//since 1==1 is always true echo should display at the top of every page
//double check these paths are being printed correctly in the source code
wp_enqueue_style(\'fancyStyle\', get_template_directory_uri() . \'fancyBox/jquery.fancybox.css\');
wp_enqueue_script(\'fancyScript\', get_template_directory_uri() . \'fancyBox/jquery.fancybox-1.3.4.js\', array(\'jquery\'), \'\', true );
}
}
//add_action(\'wp_print_styles\', \'loadFancyBox\');
add_action(\'wp_head\', \'loadFancyBox\');