标签: wordpress-theming

为自定义帖子类型重复使用默认类别/标签分类法?

在我的wordpress主题的functions.php中,我创建了一个名为foobar的自定义帖子类型.是否可以重新使用foobar帖子的默认类别和标签?或者我是否必须创建两个分类 - 一个用于类别,另一个用于标记 - 以实现此目的?

编辑:我想我已经通过在创建自定义帖子类型的函数中使用此代码解决了这个问题:

register_taxonomy_for_object_type('category', 'foobar');
register_taxonomy_for_object_type('post_tag', 'foobar');
Run Code Online (Sandbox Code Playgroud)

我掌管.

wordpress wordpress-theming

8
推荐指数
1
解决办法
3248
查看次数

如何合并在wordpress中单独管理的两个菜单,以便在前端主题中显示为一个?

我正在为一个已经构建在wp上的网站开发一个wp主题,并且有一个非常大的菜单,在wp admin中分为两个菜单.

我想在单个UL中合并主题中的这两个菜单.目前它在不同的div容器和ul li中生成两个菜单,并打破了应用于它的样式和js.

如何将这两个菜单合并为单个容器中的单个ul li?

wordpress wordpress-theming

8
推荐指数
2
解决办法
7406
查看次数

WordPress不导出或导入特色图像

我一直在尝试导出我的WordPress帖子,以便将它们导入干净的WordPress安装.导入的帖子,但不导入特色图像.

我已确保导出少量帖子以排除超时错误.

我看了一下导出的xml,找不到带有相关jpg的xml值.这是我的导出xml中的一个帖子项目(为隐私编辑):

我注意到"_thumbnail_id"的元键.

<item>
    <title> MY POST TITLE </title>
    <link>http://www.MY-DOMAIN-NAME.com/MY POST TITLE/</link>
    <pubDate>Mon, 01 Jul 2013 17:31:11 +0000</pubDate>
    <dc:creator> AUTHOR </dc:creator>
    <guid isPermaLink="false">http://www.MY-DOMAIN-NAME.com/?p=12429</guid>
    <description></description>
    <content:encoded><![CDATA[http://youtu.be/VIDEOCODE

 <a href="http://www.MY-DOMAIN-NAME.com/?s=MY+QUERY" class="mo">Read More...</a>]]>  
  </content:encoded>
    <excerpt:encoded><![CDATA[]]></excerpt:encoded>
    <wp:post_id>12429</wp:post_id>
    <wp:post_date>2013-07-01 12:31:11</wp:post_date>
    <wp:post_date_gmt>2013-07-01 17:31:11</wp:post_date_gmt>
    <wp:comment_status>open</wp:comment_status>
    <wp:ping_status>open</wp:ping_status>
    <wp:post_name>MY-POST-TITLE</wp:post_name>
    <wp:status>publish</wp:status>
    <wp:post_parent>0</wp:post_parent>
    <wp:menu_order>0</wp:menu_order>
    <wp:post_type>post</wp:post_type>
    <wp:post_password></wp:post_password>
    <wp:is_sticky>0</wp:is_sticky>

    <category domain="category" nicename="music-videos"><![CDATA[Music 
   Videos]]></category>
    <category domain="post_tag" nicename="MY-TAG"><![CDATA[RMY TAG]]>
   </category>
    <category domain="category" nicename="reggae-music-video"><![CDATA[Reggae Music Videos]]></category>
    <category domain="category" nicename="video"><![CDATA[Video]]></category>
    <wp:postmeta>
        <wp:meta_key>_edit_last</wp:meta_key>
        <wp:meta_value><![CDATA[9]]></wp:meta_value>
    </wp:postmeta>
    <wp:postmeta>
        <wp:meta_key>_thumbnail_id</wp:meta_key>
        <wp:meta_value><![CDATA[12431]]></wp:meta_value>
    </wp:postmeta>
    <wp:postmeta>
        <wp:meta_key>robotsmeta</wp:meta_key>
        <wp:meta_value><![CDATA[index,follow]]></wp:meta_value>
    </wp:postmeta>
    <wp:postmeta>
        <wp:meta_key>_oembed_c0627bbe93a4ea2be1138b1197ad7c</wp:meta_key>
        <wp:meta_value><![CDATA[<iframe width="500" height="281" …
Run Code Online (Sandbox Code Playgroud)

wordpress export wordpress-theming

8
推荐指数
1
解决办法
2万
查看次数

在Wordpress中更新本地化脚本的数据参数

我正在研究儿童主题,my-page-template.php我有:

$id_curr= 5; //calculated value through code
wp_localize_script('my_js', 'ajaxload', array('post_id' => $id_curr)); 
Run Code Online (Sandbox Code Playgroud)

my_js.js我有一个AJAX调用:

$.ajax({
   //...
   type: 'post',
   data: {
      action: 'ajax_load',
      post_id: ajaxload.post_id
   }
})
Run Code Online (Sandbox Code Playgroud)

现在functions.php,我想ajaxload.post_id根据新结果编辑/更新.有没有办法做到这一点?如果我尝试wp_localize_script()使用$name下面显示的相同方式重新呼叫,这会有效吗?

$id_new= 8; //new calculated value
wp_localize_script('my_js', 'ajaxload', array('post_id' => $id_new));  
Run Code Online (Sandbox Code Playgroud)

php ajax wordpress wordpress-theming wordpress-plugin

8
推荐指数
1
解决办法
1083
查看次数

播放演示幻灯片动画时,div的宽度减小

单击我的卡标题后,其内容将以显示幻灯片jquery动画.show('slide', {direction: 'up'}, 'slow')/ 显示或隐藏.hide('slide', {direction: 'up'}, 'slow'。问题在于,动画期间宽度.content-annales减小,因此.title-annales右侧的div 缺乏连续性。

这是问题的一个示例:单击此处

jQuery(".title-annales").on("click", function() {
  var element = jQuery(this);
  if (jQuery(this).next().css('display') === 'none') {
    element.css('border-radius', '20px 20px 0px 0px');
    jQuery(this).next().show('slide', {
      direction: 'up'
    }, 'slow', function() {
      element.find('.span-msg-mediadroit-annale').html('<i class="fas fa-chevron-circle-up"></i>');
    });

  } else {
    jQuery(this).next().hide('slide', {
      direction: 'up'
    }, 'slow', function() {
      element.css('border-radius', '20px');
      element.find('.span-msg-mediadroit-annale').html('<i class="fas fa-chevron-circle-down"></i>');
    });
  }
});
Run Code Online (Sandbox Code Playgroud)
<div class="card-annales">
  <div class="title-annales">
    <span class="span-msg-mediadroit-annale float-right"><i class="fas fa-chevron-circle-down"></i></span>
    <h3 style="font-size: …
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery wordpress-theming

8
推荐指数
1
解决办法
289
查看次数

自定义Wordpress图像大小未在3.5媒体管理器中显示

我有一个主题,使用add_image_size来定义几个自定义图像大小.这些5个图像大小用于在将图像插入帖子时显示在Wordpress 3.4媒体管理器中,但它们不再显示在新的Wordpress 3.5媒体管理器中.事实上,当我尝试将"添加媒体"添加到帖子时,我获得的唯一图像大小选项是缩略图(100x100)和全尺寸(3260x988).显然,我的主题设置不会覆盖"设置">>"媒体"中的默认媒体设置.这是我的functions.php文件中的代码:

function custom_theme_support() {
  add_theme_support('post-thumbnails');
  set_post_thumbnail_size(180, 120, true);
  add_image_size( 'hero-desktop-2x', 3200, 800, true);
  add_image_size( 'hero-desktop', 1600, 400, true);
  add_image_size( 'hero-mobile-2x', 1534, 800, true);
  add_image_size( 'hero-mobile', 767, 400, true);
}

add_action('after_setup_theme','custom_theme_support');
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是我需要做些什么来使我的主题覆盖Wordpress 3.5中的Wordpress Admin设置?

wordpress wordpress-theming

7
推荐指数
2
解决办法
6806
查看次数

woocommerce breadcrumb缺少商店链接

我有一个WordPress网站,使用woocommerce(在内部页面),我的网页结构如下:

mysite的/店/

woocommerce页面上的痕迹只显示主页链接:您在这里:主页

和我的产品页面网址:

MYSITE /产品类别/ CATEGORY_NAME /

我的店铺面包屑显示如下:

You are here: Home 
Run Code Online (Sandbox Code Playgroud)

我的类别页面痕迹显示如下:

You are here: Home
Run Code Online (Sandbox Code Playgroud)

我需要把它显示为:

你在这里:主页/购物/ category_name

我检查了永久链接选项,但似乎没问题.我检查了breadcrumb.php模板文件,似乎认为shop()页面是我网站的主页.

如果我编辑breadcrumb.php或我的设置中有错误,我该如何解决这个问题?提前致谢.

wordpress wordpress-theming woocommerce

7
推荐指数
4
解决办法
1万
查看次数

WordPress add_rewrite_rule在本地工作,但不在服务器上

我可以add_rewrite_rule在MAMP本地工作,但不能在我的DreamHost生产服务器上工作.

我试图在http://www.pawsnewengland.com/our-dogs-list/上美化个别宠物的网址.丑陋的URL遵循以下结构:our-dogs-list /?view = pet-details&id = 12345,自定义函数使用$_GET变量处理信息.

在我的functions.php文件中,我已经包含了这个:

function rewrite_pet_url() {
    add_rewrite_rule(
        "our-dogs-list/pet-details/([0-9]+)/?$",
        "index.php/our-dogs-list/?view=pet-details&id=$1",
        "top"
    );
}
add_action( 'init', 'rewrite_pet_url');
Run Code Online (Sandbox Code Playgroud)

我也尝试了同样的结果:

function rewrite_pet_url() {
    add_rewrite_rule(
        "our-dogs-list/pet-details/([0-9]+)/?$",
        "index.php/our-dogs-list/?view=pet-details&id=$matches[1]",
        "top"
    );
}
add_action( 'init', 'rewrite_pet_url');
Run Code Online (Sandbox Code Playgroud)

为了简单地测试重写是否会起作用,试过这个:

function rewrite_pet_url() {
    add_rewrite_rule(
        "fake",
        "index.php/about",
        "top"
    );
}
add_action( 'init', 'rewrite_pet_url');
Run Code Online (Sandbox Code Playgroud)

我在测试之前刷新重写规则,并确认重写规则已添加到.htaccess文件中.但是,出于某种原因,我看到的是404页面或白色屏幕并且"未指定输入文件".

我能够在本地工作,所以我不知道在现场服务器上有什么打破.任何见解?

更新1

我已经将重写"工作",因为它不再导致任何错误.不幸的是,它现在导致不必要的重定向到根URL.

function rewrite_pet_url() {
    add_rewrite_tag('%view%','([^&]+)');
    add_rewrite_tag('%id%','([^&]+)');
    add_rewrite_rule(
        'our-dogs-list/pet-details/([0-9]+)?$',
        'index.php/?page_id=1663&view=pet-details&id=$1',
        'top'
    );
}
add_action( 'init', 'rewrite_pet_url' );
Run Code Online (Sandbox Code Playgroud)

有了这个,我可以使用view和访问 …

regex apache wordpress mod-rewrite wordpress-theming

7
推荐指数
2
解决办法
2574
查看次数

如何在functions.php中需要父文件时覆盖子Wordpress主题中的父文件

我是设计和编码Wordpress主题的新手,最近开始了一个基于悉尼主题的儿童主题,该主题在Wordpress中免费提供.我遇到了一些障碍我无法解决.

有一个PHP文件通过父级调用functions.php,我需要自定义,并且在更新父主题时需要不受影响.此文件被调用template-tags.php,位于"inc"文件夹中.现在,据说,根据Wordpress codex(我在此之前询问过),子主题上的任何重复文件(除了functions.php)都将自动覆盖父主题中的那些.我不知道这对于文件夹内的文件是否也能正常工作,但我认为这个特定文件在父文件中调用的事实functions.php使得它是正在加载的父文件.我假设这是因为同样适用于我必须在子主题中排队的样式CSS和JS脚本文件,以便获得我自己的自定义版本.

但是,Wordpress codex中没有任何内容可以解释如何覆盖已在父代中调用的文件functions.php.而且我在其他地方找不到任何东西(甚至在这些问题中都没有:WordPress子主题覆盖父主题包括,在WordPress中使用Child主题覆盖父主题函数,如何从非函数覆盖不可插入的父主题函数. php文件?,Wordpress子主题 - functions.php副本 - 不能"重新声明")这对我有帮助.

所以,总结一下:

  • 父主题有一个"inc"文件夹,其中包含文件template-tags.php.
  • 我的孩子主题也有一个"inc"文件夹,里面有文件template-tags.php.
  • 父主题functions.php具有以下代码来调用其文件:

    require get_template_directory() . '/inc/template-tags.php';
    
    Run Code Online (Sandbox Code Playgroud)
  • 我尝试在我的孩子的functions.php文件中添加调用其template-tags.php文件的任何内容都会导致错误,因为很明显WP不能同样需要两次.

没有评论父母的电话functions.php,这对我来说似乎不是一个实际的解决方案,而是更多的解决办法,我不知道还有什么可做的.

我很感激此时的任何意见.提前致谢!

php wordpress wordpress-theming parent-child require

7
推荐指数
2
解决办法
9377
查看次数

如何以编程方式更改 WordPress 的默认帖子永久链接?

在 WordPress 的后端,我使用默认http://localhost/sitename/example-post/值来创建永久链接。

对于自定义帖子类型,我以这种方式定义了自定义 slug,例如services

register_post_type( 'service',
    array(
        'labels'      => array(
            'name'          => __( 'Services' ),
            'singular_name' => __( 'Service' )
        ),
        'public'      => true,
        'has_archive' => true,
        'rewrite'     => array(
            'slug'       => 'services',
            'with_front' => true
        ),
        'supports'    => array(
            'title',
            'editor',
            'excerpt',
            'thumbnail'
        ),
        'taxonomies'  => array( 'category' ),
    )
);
Run Code Online (Sandbox Code Playgroud)

它创建services/post-name

我还使用此挂钩创建自定义页面来创建自定义页面永久链接:

function custom_base_rules() {
    global $wp_rewrite;

    $wp_rewrite->page_structure = $wp_rewrite->root . '/page/%pagename%/';
}

add_action( 'init', 'custom_base_rules' );
Run Code Online (Sandbox Code Playgroud)

它创建页面/帖子名称

现在我唯一需要做的就是为正常的 WordPress …

php wordpress permalinks wordpress-theming custom-wordpress-pages

7
推荐指数
2
解决办法
1万
查看次数