如何修复wordpress自定义主题以使用插件?

giw*_*ook 6 wordpress wordpress-theming wordpress-plugin

这是我第一次尝试编写自定义wordpress主题,我几乎就在那里.有一些错误,因为有任何东西,但我已经尝试了一些不同的选择来修复它们但没有成功.

链接是www.studiosimplicit.com/wp.

我的第一个问题是事件页面上的nivo滑块(www.studiosimplicit.com/wp/events).最初我遇到插件本身的问题,图像堆叠在一起.为了纠正这个问题,我手动输入代码来调用nivo .js文件,这似乎解决了这个问题.但现在加载图像在那里,但图像不加载.

我已经检查了图像的URL,这不是问题.我还启用了"缩略图后"功能(如nivoslider网站上的建议,作为我的问题的常见修复),但似乎没有修复它.当我切换到默认主题时,滑块工作正常是没有价值的.这是当我激活我的自定义主题时,它打破了.

我的第二个问题是插件应该设置一个全屏幕背景图像,自动调整大小以适应浏览器宽度.同样,当我切换到默认主题时插件工作,但当我切换到我的自定义主题时它会中断.

请帮忙!

Mat*_*son 20

通过它的声音,您的自定义主题缺少允许插件更改/输出其代码的常见钩子.

举个简单的例子,每个主题都应该在输出页面的某个部分调用wp_head()<head>.这允许插件"挂钩"到您的<head>,例如输出代码以加载其Javascript.

这是一个真实的例子.WordPress Twentyeleven主题在其header.php文件中有这个(传统上是输出<head>任何页面部分的主题部分):

... other <head> stuff
    wp_head();
?>  
</head>
Run Code Online (Sandbox Code Playgroud)

WP Nivo Slider在调用时会使用此代码wp_enqueue_script,例如,在其wp-nivo-slider.php文件中.在幕后,wp_enqueue_script使用wp_head()Twentyeleven主题中的钩子在该部分中输出所请求的Javascript包含<head>(通过稍微迂回的路线,wp_print_head_scripts默认情况下结束).

所以,基本上,如果一个插件使用提供的主题,但不适用于您的自定义主题,那么您的任务就是找到插件尝试使用的主题中缺少的钩子.

如果您查看WordPress主题开发文档,您将找到主题应包含在"插件API挂钩"部分下的挂钩列表.这些是,具体来说:

  • wp_head
  • wp_footer
  • wp_meta
  • comment_form

大多数插件的重要部分是wp_headwp_footer.这是大多数Javascript包含在头部或页脚部分(在结束<body>标记之前)的地方.

大多数插件,如Javascript滑块,图片库等,只需<head>在网站的页脚或页脚部分添加一个或两个新脚本,也可能包含CSS文件来设置其内容的样式,再次在该<head>部分中,所以这两个通常是只有他们需要的钩子.

因此,我最初的建议是确保您的自定义主题包括wp_head()在其<head>部分末尾的调用(从您已经获得的工作主题中复制代码)以及wp_footer()在结束</body>标记之前调用.这将使大多数基于Javascript的插件工作的机会很大.