WordPress是否可以不使用主题?


17

WordPress是否可以不使用主题?如果是这样,那么它如何工作?请简要说明。

如果WordPress显示的内容没有主题,那么什么控制输出?


1
我认为如果主题文件夹中没有主题,它应该显示空白页。
罗伯特·

3
据了解,您需要为Worpdress设计一个主题。您正在尝试实现什么。你为什么问这个问题?
stemie 2014年

3
不,您不需要WordPress的主题即可工作。主题主要用于显示内容,如果不是您的要求(可能是针对特殊项目),则WordPres将可以正常工作,除了wp-cron之外。为此,您可以使用外部cron。另外,下面的答案实际上是对它的总结。
Robert hue 2014年

做我所做的事情,并使用此处描述的概念,然后构建自己的概念。
eyoung100

Answers:


29

我想有一首歌:

“想象一下没有主题。如果尝试,很容易。在我们下面没有地狱。在我们上面只有天空...” ;-)

因此,在那个虚构的梦中:

  • 您仍然可以从您的站点获取RSS feed:

    example.com/feed/
  • 您仍然可以登录到后端:

    example.com/wp-login.php
  • 您仍然可以照常访问后端并在那里(几乎)工作:

    example.com/wp-admin/
  • 日程安排帖子将不起作用,因此您将收到Missed schedule消息。

  • wp-cron 将不可靠。

  • 您仍然可以访问 /wp-admin/admin-ajax.php

  • 您可以使用template_redirecttempate_include钩子来控制输出。尝试例如这个小插件:

    <?php
    /** Plugin Name: No-Theme-Day **/
    add_action( 'template_redirect', 
        function()
        { 
            wp_die( __( "Jibby! It's the No-Theme-Day today!" ) ); 
        } 
    );
  • ...

ps:请原谅我的星期五答案-“ 但是我不是唯一的一个; ”-)


2
实际上,这是一个完美的答案。
罗伯特·

1
歌曲优美,实现也更好。约翰·列侬会为之骄傲。+1
Pieter Goosen 2014年

2
绝对可以想象得到一个引用:)太糟糕了,我不能再给您一个答案。
Nicolai 2014年

1
我完全同意@ialocin不幸的是,每个答案只能投票一次。
Pieter Goosen 2014年

1
我只是在模板重定向挂钩中的丢失出口处陷入困境,这是一个星期五巧合;-) @PieterGoosen
birgire 2015年

12

由于使用没有主题的WordPress非常罕见,因此它的技术性没有引起太多关注。

首先,您必须了解WordPress核心中有多个处理请求的“端点”。

  • 管理员端有自己的(和众多)端,例如wp-admin/index.php
  • 前端几乎遍及整个index.php根部,但是通常被永久链接“隐藏”

如果您查看后一个文件,它具有以下行:

define('WP_USE_THEMES', true);

因此,通常 WordPress希望前端始终具有主题并相应地配置运行时环境。仅当要在中加载主题模板时,此常数才可以控制太多template-loader.php

请注意,这不会阻止在核心启动过程中加载父/子主题(如果存在)。

因此,默认情况下, WordPress希望至少存在一个主题,并将其启用,并具有用于前端显示目的的模板。

但是,这仅是默认问题,可以完全进行配置。在这种情况下,WordPress将在管理员端继续完全发挥作用,而在前端端,所有依赖主题模板的请求将停止显示任何内容。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.