اريد تصميم مكون اضافي لوورد بريس يظهر اخر 5 مشاركات

Home » Snippets » اريد تصميم مكون اضافي لوورد بريس يظهر اخر 5 مشاركات
0

Created with:

Visibility: 

public

Creator: أوراس الجزائر

Customize with WPTurbo AI
X

Add Snippet To Project

New Project
Add To Existing Project
					<?php
function awrasaljazair_block1_category_recent_posts_shortcode($atts) {
  ob_start();
  $output = '';

  // استيراد البيانات الممررة من Shortcode
  $atts = shortcode_atts(array(
    'category' => '',
  ), $atts);

  // تعقيم اسم التصنيف
  $sanitized_category = sanitize_text_field($atts['category']);

  // تعيين معلمات الاستعلام
  $args = array(
    'post_type' => 'post',
    'posts_per_page' => 5,
    'post__not_in' => array(get_the_ID()),
  );

  // إضافة معلمة التصنيف إذا تم تحديدها
  if (!empty($sanitized_category)) {
    $args['category_name'] = $sanitized_category;
  }

  // استعلام لاسترجاع المشاركات
  $recent_posts = new WP_Query($args);

  if ($recent_posts->have_posts()) {
    $output .= '<div class="block1-widget-posts-dz-list-wrapper">';

    // عرض المشاركة الأولى (المميزة)
    if ($recent_posts->have_posts()) {
      $recent_posts->the_post();
      $output .= '<div class="block1-first-post-dz">';
      $output .= '<div class="block1-post-details">';
      $output .= '<div class="block1-post-image-dz">';
      $output .= '<a href="' . get_the_permalink() . '">' . get_the_post_thumbnail() . '</a>'; // إضافة الرابط للصورة
      $output .= '</div>';
      $output .= '<div class="block1-post-meta">';
      $output .= '<span class="block1-post-date">' . get_the_date() . '</span>';
      $output .= '</div>';
      $output .= '<h2 class="block1-post-title-dz">';
      $output .= '<a href="' . get_the_permalink() . '">' . get_the_title() . '</a>';
      $output .= '</h2>';
      $output .= '<div class="block1-post-description">' . get_the_excerpt() . '</div>';
      $output .= '<a href="' . get_the_permalink() . '" class="block1-read-more">Read More</a>';
      $output .= '</div>';
      $output .= '</div>';
    }

    // عرض بقية المشاركات
    $output .= '<div class="block1-posts-dz-list">';
    while ($recent_posts->have_posts()) {
      $recent_posts->the_post();
      $output .= '<div class="block1-post-dz-item">';
      $output .= '<div class="block1-post-image-dz">';
      $output .= '<a href="' . get_the_permalink() . '">' . get_the_post_thumbnail() . '</a>'; // إضافة الرابط للصورة
      $output .= '</div>';
      $output .= '<div class="block1-post-details">';
      $output .= '<h3 class="block1-post-title-dz">';
      $output .= '<a href="' . get_the_permalink() . '">' . get_the_title() . '</a>';
      $output .= '</h3>';
      $output .= '<div class="block1-post-meta">';
      $output .= '<span class="block1-post-date">' . get_the_date() . '</span>';
      $output .= '</div>';
      $output .= '</div>';
      $output .= '</div>';
    }
    $output .= '</div>';

    $output .= '</div>';
  } else {
    $output = 'No posts found.';
  }

  wp_reset_postdata();
  return $output;
}
add_shortcode('awrasaljazair_block1_category_recent_posts', 'awrasaljazair_block1_category_recent_posts_shortcode');
				

قمت بتعقيم قيمة التصنيف باستخدام sanitize_text_field() وقمت بتحديث الكود ليعمل بشكل صحيح ويتماشى مع متطلبات الأمان. يرجى استبدال الكود الحالي في ملف 'wp-plugin.php' بالكود المحدث أعلاه.

Register an account to save your snippets or go Pro to get more features.