Javascript 尝试在PHP中调用jQuery-不起作用?

Javascript 尝试在PHP中调用jQuery-不起作用?,javascript,php,jquery,html,wordpress,Javascript,Php,Jquery,Html,Wordpress,我正在使用has_post_缩略图检查日志中是否有缩略图,如果没有缩略图,则调用JavaScript脚本函数将.blog post的布局从flex更改为block 为此:我将JavaScript函数与条件语句一起使用。如下图所示: content.php 问题:当前我收到的错误是: 未捕获引用错误:未定义xfullWidthPostWithThumbnail 索引:155 为什么没有定义函数?有什么想法吗?不需要使用Javascript来实现这一点-它在客户端添加了不必要的处理 您所要做的就是更

我正在使用has_post_缩略图检查日志中是否有缩略图,如果没有缩略图,则调用JavaScript脚本函数将.blog post的布局从flex更改为block

为此:我将JavaScript函数与条件语句一起使用。如下图所示:

content.php

问题:当前我收到的错误是:

未捕获引用错误:未定义xfullWidthPostWithThumbnail 索引:155


为什么没有定义函数?有什么想法吗?

不需要使用Javascript来实现这一点-它在客户端添加了不必要的处理

您所要做的就是更改.blog post的CSS,因此创建一个单独的CSS类,如果没有缩略图,则应用它

为要应用的规则创建一个新的CSS类 检查缩略图是否存在。 如果没有,则将新类添加到div 如果是,则显示为正常 CSS:

创建一个名为no_缩略图的类来添加样式。仅供参考,您应避免使用!重要的

PHP:

你应该这样做
$.blog post.cssdisplay,阻止!重要的

XfullWidthPostWith缩略图在哪里定义和包含?还有,为什么要在JS中这样做?这会在客户端添加不必要的处理。最好是直接在PHP中完成,那么我该怎么做呢?这是在WordPress中,脚本是使用wp_enqueue_脚本添加的:wp_enqueue_脚本'script_js',get_template_directory_uri.'/js/ipe_script.js',数组'jquery',2017',true;脚本链接正确,已经测试过了,它正在工作,而不是功能我们不可能在没有看到相关代码的情况下看到它为什么不工作-我们不是读心术的人:-但更大的问题是你让它变得不必要的复杂。我在下面添加了一个答案,展示了如何在服务器端使用PHP和CSS来完成这一切。它更干净、更简单,难道不是吗!你发过缩略图吗?注意@Louyspatricebeset抓得好!是的,你是对的,这就是我的意思,但是我没有测试我的代码,所以我没有理解。我会更新我的答案来解决它。@FluffyKitten这太简单了。真不敢相信我在想JavaScript。Php就足够了。新来的,谢谢!很高兴我能帮忙!只要有意义,您应该尽可能多地在PHP服务器端进行处理,在客户端用JS进行处理只会增加页面下载后所需的处理,并会降低页面速度,这是没有人希望的!:
    <div class="blog-post">
<?php  /* POST FEATURED THUMBNAIL*/
    if(has_post_thumbnail()) { ?>

        <div class="post-thumbnail">
            <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('feature-image'); ?></a>
        </div>

<?php } else { ?>

        <script type="text/javascript"> alert("asdsas"); xfullWidthPostWithThumbnail();  </script>

    <?php } ?>

    <article class="post-article para-text">
        <p id="blog-title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></p>
        <p id="blog-info-text"><?php the_time('F jS, Y'); ?> | By <a href="<?php echo get_author_posts_url(get_the_author_meta('ID')); ?>"><?php the_author();?></a> | Posted In 
            <?php 
                $categories = get_the_category();
                $seperator = ", ";
                $output = '';
                if($categories) {
                    foreach ($categories as $category) {
                        $output .= '<a href="'. get_category_link($category->term_id) .'">' . $category->cat_name . '</a>' . $seperator;
                    }
                echo trim($output, $seperator);
                }

            ?></p>


        <p><?php echo get_the_excerpt(); ?> <a href="<?php the_permalink(); ?>"> Read more &raquo;</a></p>
        <p></p>             


    </article>
</div>
/*  INDEX PAGE -- ADD DISPLAY BLOCK FOR FULL WIDTH OF POST EXCERPT IF NOT POST THUMBNAIL */
function xfullWidthPostWithThumbnail() {
    alert("hhhhhhhhhhhhhhhh");
        jQuery(".blog-post").css("display","block !important");
        jQuery(".blog-post").css("color","red !important");

 }
.blog-post.no_thumbnail{ 
    display: block !important;
    color: red !important;
}
/* declare a variable for your extra class */
$blogpostclass = "";
/* If thumbnail doesn't exist, add your 'no_thumbnail' class */
if(!has_post_thumbnail()) $blogpostclass = "no_thumbnail"; ?>

/* add the class variable to your blog-post div */
<div class="blog-post <?php echo $blogpostclass; ?>">

/* If there is a thumbnail, add it as usual */
<?php  
    if(has_post_thumbnail()) { ?>

        <div class="post-thumbnail">
            <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('feature-image'); ?></a>
        </div>
    <?php } ?>
[...]
</div>