php 媒体查询ShortCode

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 媒体查询ShortCode相关的知识,希望对你有一定的参考价值。

<?php

/**
 * Déclaration du shortcode
 *
 * @param  string   $slug     Le slug du shortcode déclaré qui sera utilisé pour écrire le shortcode (ex : [monshortcode][/monshortcode]);
 * @param  function $function La fonction à executer pour interpréter le shortcode. $atts sont les paramètres que l'on peux passer au short code comme les attributs d'une balise HTML. $content est le contenu qui peu exister entre deux balises du shortcode
 *
 * @return html     Retourne ce que le shortcode doit afficher
 */
add_shortcode( "fhf_post_list", function ( $atts )
{
  
  // Déclaration des valeurs par défauts des attributs du shortcode
  $atts = shortcode_atts(
    array(
      "per_page" => "5",      // nombre de posts dans la liste
      "order" => "DESC",   // Ordre d'affichage des posts donc SOIT : "ASC" (croissant), "DESC" (décroissant)
      "orderby" => 'date',   // Sur quoi on base l'ordre d'affichage liste possible : 'none', 'ID', 'author', 'title', 'name', 'date', 'modified'
      "categories" => '',       // l'ID des catégories que tu veux et séparées par des virgules, donc sur le paramètre du short code tu auras quelque chose comme : [fhf_post_list categories='1,2,3']
      'id' => '',       // l'attribut ID sur la balise HTML (<div id="">)
      'class' => '',       // classes CSS sur le block parent à écrire comme ça "container row padding"... bref des espaces pour séparer
      'show_date' => 'true',   // Montrer la date ou non
      'show_thumbnail' => 'true',// Montrer l'image ou non
      'show_desc' => 'true',   // Montrer la description de l'article ou non
      'show_button' => 'true', // Afficher le boutton lorsque c'est à 'true', le cacher quand c'est à 'false' ex: [fhf_post_list show_button='false']
      'button-text' => 'En savoir plus' // le texte du boutton
    ),
    $atts // -> les attributs passés en paramètre sur le shortcode
  );
  
  // Préparation du contenu du shortcode
  
  /***********Magical stuff************/
  
  // Output
  $query_args = array(
    'posts_per_page' => $atts['per_page'],
    'order' => $atts['order'],
    'oderby' => $atts['orderby'],
  );
  
  if ( $atts['categories'] !== '' ) {
    $query_args['cat'] = $atts['categories'];
  }
  
  $my_query = new WP_Query( $query_args );
  
  $output = '<div id="' . $atts["id"] . '" class="fhf-post-list-post-container ' . $atts['class'] . '">';
  
  while ( $my_query->have_posts() ) : $my_query->the_post();
    $output .= '<div class="row fhf-post-list-post">';
    
    // Image
    if ( $atts['show_thumbnail'] === 'true' ) {
      $output .= '<div class="site-thumbnail fhf-post-list-image">';
      $output .= '<a href="' . get_permalink() . '">' . get_the_post_thumbnail() . '</a>';
      $output .= '</div>';
    }
    
    // Content
    $output .= '<div class="content-block-main ">';
    
    // Titre
    $output .= '<div class="gt-site-title fhf-post-list-title">' . '<a href="' . get_permalink() . '">' . get_the_title() . '</a></div>';
    
    // Date
    if ( $atts['show_date'] === 'true' ) {
      $output .= '<div class="fhf-post-list-date-wrapper">';
      $output .= '<p class="fhf-post-list-date">' . get_the_date() . '</p>';
      $output .= '</div>';
    }
    
    // Desc
    if ( $atts['show_desc'] === 'true' && !empty( get_the_content() ) ) {
      
      $output .= '<div class="gt-site-content fhf-post-list-desc">';
      $output .= '<p>' . get_the_excerpt() . '</p>';
      $output .= '</div><!-- /desc -->';
      
    }
    
    if ($atts['show_button'] === 'true') {
      $output .= '<div class="fhf-post-list-button-wrapper">';
      $output .= '<a href="' . get_the_permalink() . '" class="fhf-post-list-button">' . $atts['button-text'] . '</a>';
      $output .= '</div><!-- /button-wrapper -->';
    }
    
    $output .= '</div><!-- main content -->';
    $output .= '</div><!-- /row -->';
  
  endwhile;
  
  $output .= '</div>';
  
  wp_reset_postdata();
  
  return $output;
  // Output
  
} );
?>

以上是关于php 媒体查询ShortCode的主要内容,如果未能解决你的问题,请参考以下文章

php WP Shortcode加载远程内容

php 如何在Blooming中启用Shortcode

php semplice shortcode con contenuto

php WordPress Shortcode返回当前页面标题。

php Shortcode para video do youtube

php 创世纪档案描述oEmbed Shortcode支持