diff --git a/inc/theme-article.php b/inc/theme-article.php index d8fa2f9..577447c 100644 --- a/inc/theme-article.php +++ b/inc/theme-article.php @@ -1,9 +1,10 @@ * @license MIT License - * @version 2021.07.01 + * @version 2021.08.19 */ // 文章链接添加 target 和 rel @@ -102,13 +103,15 @@ add_filter('excerpt_length', 'excerpt_length'); add_theme_support("post-thumbnails"); // 生成适合特色图的比例图片 -add_image_size( 'kratos-thumbnail', 512, 288, true ); +add_image_size('kratos-thumbnail', 512, 288, true); // 强制图片链接到媒体文件 add_action('after_setup_theme', 'default_attachment_display_settings'); -function default_attachment_display_settings() { - update_option('image_default_link_type', 'file'); +function default_attachment_display_settings() +{ + update_option('image_default_link_type', 'file'); } + // 文章特色图片 function post_thumbnail() { @@ -131,13 +134,7 @@ function post_thumbnail() if (!empty($img_val)) { echo ''; } else { - $category=get_the_category($post->ID); - $catid=$category[0]->term_id; - if(kratos_option('essay_feature_img_'.$catid) - && kratos_option('essay_feature_img_usable',true)) - { - $img = kratos_option('essay_feature_img_'.$catid); - }elseif(!kratos_option('g_postthumbnail')) { + if (!kratos_option('g_postthumbnail')) { $img = ASSET_PATH . '/assets/img/default.jpg'; } else { $img = kratos_option('g_postthumbnail', ASSET_PATH . '/assets/img/default.jpg'); @@ -151,8 +148,13 @@ function post_thumbnail() function pagelist($range = 5) { global $paged, $wp_query, $max_page; - if (!$max_page) {$max_page = $wp_query->max_num_pages;} - if ($max_page > 1) {if (!$paged) {$paged = 1;} + if (!$max_page) { + $max_page = $wp_query->max_num_pages; + } + if ($max_page > 1) { + if (!$paged) { + $paged = 1; + } echo "
"; if ($paged > 1) { echo ''; @@ -218,8 +220,8 @@ function comment_scripts() wp_localize_script('comment', 'ajaxcomment', array( 'ajax_url' => admin_url('admin-ajax.php'), 'order' => get_option('comment_order'), - 'compost' => __('评论正在提交中','kratos'), - 'comsucc' => __('评论提交成功','kratos'), + 'compost' => __('评论正在提交中', 'kratos'), + 'comsucc' => __('评论提交成功', 'kratos'), )); } add_action('wp_enqueue_scripts', 'comment_scripts'); @@ -246,23 +248,29 @@ function comment_callback() $user = wp_get_current_user(); do_action('set_comment_cookies', $comment, $user); $GLOBALS['comment'] = $comment; - ?> +?>
  • - +
    - +
    - +
    -
    ';edit_comment_link(__('编辑', 'kratos'));echo '';};?> +
    '; + edit_comment_link(__('编辑', 'kratos')); + echo ''; + }; ?>
  • - + $GLOBALS['comment'] = $comment; ?>
  • - +
    - +
    - +
    -
    ';edit_comment_link(__('编辑', 'kratos'));echo '';};?> +
    '; + edit_comment_link(__('编辑', 'kratos')); + echo ''; + }; ?>
    - 'comment', 'respond_id' => 'respond', 'reply_text' => '' . __('回复', 'kratos') . ''); comment_reply_link(array_merge($defaults, array('depth' => $depth, 'max_depth' => $args['max_depth']))); - ?> + ?>
    @@ -370,7 +384,7 @@ function get_wpsmiliestrans() return $output; } -if (!kratos_option('g_gutenberg',false)) { +if (!kratos_option('g_gutenberg', false)) { // 禁用 Gutenberg 编辑器 add_filter('use_block_editor_for_post', '__return_false'); add_filter('gutenberg_use_widgets_block_editor', '__return_false'); @@ -389,93 +403,99 @@ if (!kratos_option('g_gutenberg',false)) { } // 文章评论增强 -function comment_add_at($comment_text, $comment = '') { - if( $comment->comment_parent > 0) { - $comment_text = '@' . get_comment_author( $comment->comment_parent ) . ' ' . $comment_text; - } +function comment_add_at($comment_text, $comment = null) +{ + if ($comment->comment_parent > 0) { + $comment_text = '@' . get_comment_author($comment->comment_parent) . ' ' . $comment_text; + } - return $comment_text; -} -add_filter('comment_text' , 'comment_add_at', 20, 2); + return $comment_text; +} +add_filter('comment_text', 'comment_add_at', 20, 2); -function recover_comment_fields($comment_fields){ +function recover_comment_fields($comment_fields) +{ $comment = array_shift($comment_fields); - $comment_fields = array_merge($comment_fields ,array('comment' => $comment)); + $comment_fields = array_merge($comment_fields, array('comment' => $comment)); return $comment_fields; } -add_filter('comment_form_fields','recover_comment_fields'); +add_filter('comment_form_fields', 'recover_comment_fields'); $new_meta_boxes = -array( - "description" => array( - "name" => "seo_description", - "std" => "", - "title" => __( '描述', 'kratos' ) -), - "keywords" => array( - "name" => "seo_keywords", - "std" => "", - "title" => __( '关键词', 'kratos' ) -) -); + array( + "description" => array( + "name" => "seo_description", + "std" => "", + "title" => __('描述', 'kratos') + ), + "keywords" => array( + "name" => "seo_keywords", + "std" => "", + "title" => __('关键词', 'kratos') + ) + ); -function seo_meta_boxes() { +function seo_meta_boxes() +{ $post_types = get_post_types(); - add_meta_box( 'meta-box-id', __( 'SEO 设置', 'kratos' ), 'post_seo_callback', $post_types ); + add_meta_box('meta-box-id', __('SEO 设置', 'kratos'), 'post_seo_callback', $post_types); } -add_action( 'add_meta_boxes', 'seo_meta_boxes' ); +add_action('add_meta_boxes', 'seo_meta_boxes'); -function post_seo_callback( $post ) { +function post_seo_callback($post) +{ global $new_meta_boxes; - foreach($new_meta_boxes as $meta_box) { - $meta_box_value = get_post_meta($post->ID, $meta_box['name'].'_value', true); - - if($meta_box_value == "") - $meta_box_value = $meta_box['std']; - - echo '

    '.$meta_box['title'].'

    '; - echo '
    '; + foreach ($new_meta_boxes as $meta_box) { + $meta_box_value = get_post_meta($post->ID, $meta_box['name'] . '_value', true); + + if ($meta_box_value == "") + $meta_box_value = $meta_box['std']; + + echo '

    ' . $meta_box['title'] . '

    '; + echo '
    '; } - - echo ''; + + echo ''; } -function wpdocs_save_meta_box( $post_id ) { +function wpdocs_save_meta_box($post_id) +{ global $new_meta_boxes; - - if ( !wp_verify_nonce( isset($_POST['metaboxes_nonce']) ? $_POST['metaboxes_nonce'] : null , plugin_basename(__FILE__) )) - return; - - if ( !current_user_can( 'edit_posts', $post_id )) - return; - - foreach($new_meta_boxes as $meta_box) { - $data = $_POST[$meta_box['name'].'_value']; - - if($data == "") - delete_post_meta($post_id, $meta_box['name'].'_value', get_post_meta($post_id, $meta_box['name'].'_value', true)); - else - update_post_meta($post_id, $meta_box['name'].'_value', $data); - } + + if (!wp_verify_nonce(isset($_POST['metaboxes_nonce']) ? $_POST['metaboxes_nonce'] : null, plugin_basename(__FILE__))) + return; + + if (!current_user_can('edit_posts', $post_id)) + return; + + foreach ($new_meta_boxes as $meta_box) { + $data = $_POST[$meta_box['name'] . '_value']; + + if ($data == "") + delete_post_meta($post_id, $meta_box['name'] . '_value', get_post_meta($post_id, $meta_box['name'] . '_value', true)); + else + update_post_meta($post_id, $meta_box['name'] . '_value', $data); + } } -add_action( 'save_post', 'wpdocs_save_meta_box' ); +add_action('save_post', 'wpdocs_save_meta_box'); // 主页轮播 -function kratos_carousel(){ +function kratos_carousel() +{ $output = ''; - $carousel_img= null; - $carousel_url= null; - if(kratos_option('g_carousel', false)){ - for($i=1; $i<6; $i++){ + $carousel_img = null; + $carousel_url = null; + if (kratos_option('g_carousel', false)) { + for ($i = 1; $i < 6; $i++) { $carousel_img_[$i] = kratos_option("c_i_{$i}") ?: null; $carousel_url_[$i] = kratos_option("c_u_{$i}") ?: null; - if($carousel_img_[$i] ){ + if ($carousel_img_[$i]) { $carousel_img[] = $carousel_img_[$i]; $carousel_url[] = $carousel_url_[$i]; } } - if(is_array($carousel_img)){ + if (is_array($carousel_img)) { $count = count($carousel_img); } else { $count = '0'; @@ -483,21 +503,21 @@ function kratos_carousel(){ $output = '
    "; }; @@ -505,25 +525,31 @@ function kratos_carousel(){ $output .= '
    '; $output .= '
  • '; } - if(is_array($carousel_img)){ + if (is_array($carousel_img)) { echo $output; } } // 获取文章评论数量 -function findSinglecomments($postid=0,$which=0){ - $comments = get_comments('status=approve&type=comment&post_id='.$postid); +function findSinglecomments($postid = 0, $which = 0) +{ + $comments = get_comments('status=approve&type=comment&post_id=' . $postid); if ($comments) { - $i=0; $j=0; $commentusers=array(); + $i = 0; + $j = 0; + $commentusers = array(); foreach ($comments as $comment) { ++$i; - if ($i==1) { $commentusers[] = $comment->comment_author_email; ++$j; } - if ( !in_array($comment->comment_author_email, $commentusers) ) { + if ($i == 1) { + $commentusers[] = $comment->comment_author_email; + ++$j; + } + if (!in_array($comment->comment_author_email, $commentusers)) { $commentusers[] = $comment->comment_author_email; ++$j; } } - $output = array($j,$i); + $output = array($j, $i); $which = ($which == 0) ? 0 : 1; return $output[$which]; } @@ -558,4 +584,4 @@ function toc_replace_heading($content) $toc[] = array('text' => trim(strip_tags($content[3])), 'depth' => $content[1], 'count' => $toc_count); return "{$content[3]}"; -} \ No newline at end of file +}