Yli 20 halutuinta WordPress-silmukkahakkerointia

5

Silmukka on WordPressin pääprosessi, joten se löytyy melkein jokaisesta teematiedostosta. Pohjimmiltaan se on PHP-koodi, jota alusta käyttää viestien näyttämiseen teemamallitiedostojen kautta. Toisin sanoen se on valtava. Itse asiassa se on kriittinen, koska sivusto ei toimi ilman silmukkaa.

Tämän uskomattoman tehokkaiden ominaisuuksien säätäminen voi parantaa WordPress-sivustosi ominaisuuksia. Voit esimerkiksi muuttaa tapaa, jolla viestit näkyvät etusivulla, ja lajitella ne tiettyjen parametrien avulla. Koska silmukka on helpoin muokata, voi saada melko vaikuttavia ja luovia hakkereita.

Näytämme sinulle yli 20 silmukkahakkerointia, joita sinun pitäisi käyttää juuri nyt, jotta se tapahtuu ilman lisäosien asentamista.

1 Sijoita mainonta ensimmäisen viestin jälkeen

Bloggaajana tiedät erittäin hyvin, että mainokset ovat yksi parhaista tavoista ansaita rahaa. Kaivattujen napsautusten saaminen vierailijoilta on varmasti hankala asia, ja monet bloggaajat eivät nauti korkeista napsautussuhteista. Mainosten sijoittaminen ensimmäisen viestin jälkeen voi olla hyvä tapa lisätä niitä, joten kokeile tätä yksinkertaista säätöä.

Vaihda silmukasi alla olevaan. Kiinnitä huomiota, sillä sinun on liitettävä mainoksen koodi sinne:

<?php if (have_posts()): ?>
<?php $count = 0; ?>
<?php while (have_posts()): the_post(); ?>
<?php $count++; ?>
  <?php if ($count == 2): ?>
          //Insert the code of an ad in this line
          <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
          <?php the_excerpt(); ?>
   <?php else: ?>
          <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
          <?php the_excerpt(); ?>
  <?php endif; ?>
<?php endwhile; ?>
<?php endif; ?>
2 Näytä vanhentuneet, mutta suositut 1 vuotta vanhat viestit

Jotkut blogisi viestit, vaikka ne on luotu vuosi sitten, saattavat silti olla suosittuja lukijoidesi keskuudessa. Se voi olla esimerkiksi ohjeartikkeli tai jokin muu ikivihreä sisältö. Voit varmistaa, että nämä viestit pysyvät suosittuina, käyttämällä tätä kätevää hakkeria.

Lisää tämä koodi single.php-tiedostoon:

<?php
$current_day = date('j');
$last_year = date('Y')-1;
query_posts('day='.$current_day.'&year='.$last_year);
if (have_posts()):
    while (have_posts()): the_post();
       the_title();
       the_excerpt();
    endwhile;
endif;
?>
3 Näytä viisi viimeisintä tarttuvaa viestiä

Oletustoiminto mahdollistaa yhden postauksen kiinnittämisen etusivulle. Alla oleva hakkerointi sijoittaa viisi tahmeaa viestiä.

Monet bloggaajat pitävät tarttuvia viestejä suositeltuina viesteinä, koska ne mahdollistavat merkinnän näkymisen muiden yläpuolella. Jos haluat luoda oman "Toimittajan valinnat" -kategorian, sitä varten on hakkerointi. Alla oleva koodi on lisättävä mihin tahansa teemaan, jotta se toimii. Voit myös muuttaa numeroa näyttämään vähemmän viestejä korvaamalla numeron neljäs rivi.

<?php
$sticky = get_option('sticky_posts');
rsort( $sticky );
$sticky = array_slice( $sticky, 0, 5);
query_posts( array( 'post__in' => $sticky, 'caller_get_posts' => 1) );
 
if (have_posts()):     while (have_posts()): the_post();
        the_title();
        the_excerpt();
    endwhile;
endif;
 
?>
4 Listaa tietyn luokan viestit

Erota viestit samasta luokasta alla olevan hakkeroinnin avulla.

Jos sinun on jostain syystä erotettava samaan kategoriaan kuuluvat viestit (esimerkiksi artikkelit esseiden kirjoittajille), lisää seuraava koodi silmukkatiedostoon.

<?php foreach((get_the_category()) as $category) {
        $thecat = $category->cat_ID. ' ';
        query_posts('child_of='.$thecat);
 if (have_posts()): while (have_posts()): the_post();
    //Classic WP loop
 endwhile;endif;
?>
5 Anna luettelo tulevista viesteistä

Kun kerrot lukijoille tulevista viesteistä, he voivat herättää heidän kiinnostuksensa ja saada heidät palaamaan blogiisi lukemaan niitä. Jos tämä kuulostaa hyvältä idealta, käytä alla olevaa koodia antaaksesi lyhyen luettelon WordPress-sivustosi tulevista viesteistä.

<?php query_posts('showposts=10&post_status=future'); ?>
<?php if (have_posts() ): while (have_posts() ): the_post(); ?>
    <h2><?php the_title(); ?></h2>
    <span class="datetime"><?php the_time('j. F Y'); ?></span></p>
<?php endwhile;
else: ?><p>No future events scheduled.</p>
<?php endif; ?>
6 Lähetä viestit tiettynä päivänä

Jos sinulla on usein vaikeuksia löytää joitain viestejä syötteestäsi, voit etsiä niitä silmukan avulla. Se on mahdollista lisäämällä seuraava koodi, joka tekee hausta todella helppoa. Tarkemmin sanottuna se hakee merkinnät, jotka on lähetetty kahden itse määrittämäsi päivämäärän välillä.

<?php
  function filter_where($where = '') {
        $where .= " AND post_date >= '2012-08-19' AND post_date <= '2012-08-11'";
    return $where;
  }
add_filter('posts_where', 'filter_where');
query_posts($query_string);
while (have_posts()):       the_post();
      the_content();
endwhile;
 
?>
7 Näytä kuvasilmukka

WordPress-sivuston aloitussivulla oleva kuvagalleria on hyvä idea, koska suurin osa ihmisistä arvostaa visuaalisuutta. Jos viestisi sisältävät liidikuvan, alla oleva koodi hakee ne esittelyä varten.

Lisää seuraava koodi functions.php-tiedostoon:

function catch_that_image() {
  global $post, $posts;
  $first_img = '';
  ob_start();
  ob_end_clean();
  $output = preg_match_all('/<img.+src=['"]([^'"]+)['"].*>/i', $post->post_content, $matches);
  $first_img = $matches [1] [0];
 
  if(empty($first_img)){ //Determines a default image
    $first_img = "/images/default.webp";
  }
  return $first_img;
}
8 Poista viestit automaattisesti asettamalla viimeinen voimassaolopäivä

Oletetaan, että järjestät kilpailun lisätäksesi blogisi lukijakuntaa. Kun kilpailu on päättynyt, julkaiset tulokset, ja mikä tärkeintä, vastaukset tai vihjeet ja vihjeet niihin. Tietenkään niiden ei pitäisi olla lukijoiden saatavilla ikuisesti, koska saatat järjestää toisen kilpailun tulevaisuudessa, eikö niin?

Hyvä tapa poistaa viestejä, vaikka olet unohtanut ne, on ajoittaa se asettamalla viimeinen voimassaolopäivä. Alla oleva silmukka korvaa nykyisen silmukan ja tekee juuri sen.

Älä unohda käyttää muotoa kk/pp/vvvv 00:00:00 vanhenemisajan korvaamiseksi.

<?php
if (have_posts()): while (have_posts()): the_post(); ?>
$expirationtime = get_post_custom_values('expiration');
if (is_array($expirationtime)) {
$expirestring = implode($expirationtime);
}
  
$secondsbetween = strtotime($expirestring)-time();
if ($secondsbetween > 0) {
// For example…
the_title();
the_excerpt();
}
endwhile;
endif;
?>
9 Erota kommentit Trackbackista

Suosittu blogimerkintä linkitetään monilta muilta sivustoilta. Jotta lukijat voivat mukavasti seurata keskustelua kommenttiosiossa, sinun tulee erottaa kommentit ja jälkipalautteet.

Sinun tarvitsee vain avata comments.php ja etsiä seuraavaa:

foreach ($comments as $comment): ?>
// Comments are displayed here
endforeach;

Löytänyt sen? Hienoa, korvaa se nyt uudella koodilla:

<ul class="commentlist">
<?php //Displays comments only
foreach ($comments as $comment): ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type == 'comment') { ?>
<li>//Comment code goes here</li>
<?php }
endforeach;
</ul>
  
<ul>
<?php //Displays trackbacks only
foreach ($comments as $comment): ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type != 'comment') { ?>
<li><?php comment_author_link() ?></li>
<?php }
endforeach;
  
</ul>
10 Näytä liittyvät viestit

Aiheeseen liittyvien viestien näyttäminen on hyvä tapa lisätä lukijakuntaa. Sinun tarvitsee vain liittää erityinen koodi single.php-tiedostoon.

<?php   
  $backup = $post;  // backup the current object
  $tags = ks29so_get_post_tags($post->ID);
  $tagIDs = array();
  if ($tags) {
    $tagcount = count($tags);
    for ($i = 0; $i < $tagcount; $i++) {
      $tagIDs[$i] = $tags[$i]->term_id;
    }
    $args=array(
      'tag__in' => $tagIDs,
      'post__not_in' => array($post->ID),
      'showposts'=>5,
      'caller_get_posts'=>1
    );
    $my_query = new WP_Query($args);
    if( $my_query->have_posts()) {
      while ($my_query->have_posts()): $my_query->the_post(); ?>
        <h3><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h3>
      <?php endwhile;
    } else { ?>
      <h2>No related posts found!</h2>
    <?php }
  }
  $post = $backup;  // copy it back
  ks29so_reset_query(); // to use the original query again
?>
11 Määritä, miten tietyt viestit näytetään etusivulla

Suurin osa WordPress-teemoista näyttää kaikki viestit samalla tavalla aloitussivulla. Jos et kuitenkaan pidä siitä, voit muuttaa sitä ja määrittää, mitkä niistä tulisi näyttää kokonaan ja mihin vain otteet riittävät.

Etsi index.php-tiedosto ja etsi silmukka sieltä. Seuraava koodi korvaa sen:

<?php if (have_posts()):     while (have_posts()): the_post();
         $customField = get_post_custom_values("full");
         if (isset($customField[0])) {
             //Custom field is set, display a full post
              the_title();
              the_content();
         } else {
             // No custom field set, lets display an excerpt
              the_title();
              the_excerpt();
    endwhile;
endif;
?>
12 Näytä mainossisältö etusivun viestien yläpuolella

Lisää mainossisältöä lisäämällä seuraava koodi index.php-tiedostoon.

<div class="content-loop">
13 Listaa kaikki blogin kirjoittajat sivulla

Liitä tämä koodi mihin tahansa silmukan kohtaan nähdäksesi luettelon kaikista kirjoittajista.

<ul>
<?php ks29so_list_authors('exclude_admin=0&optioncount=1&show_fullname=1&hide_empty=1'); ?>
</ul>
14 Näytä vierastekijän nimi käyttämällä mukautettua kenttää

Jos käytät blogissasi vierailevia kirjoittajia, et todennäköisesti luo heille erillistä sivua. Mikset vain näytä heidän nimeään sen sijaan?

Lisää tämä koodi osoitteeseen single.php tehdäksesi sen:

<?php $author = get_post_meta($post->ID, "guest-author", true);
if ($author != "") {
echo $author;
} else {
the_author();
} ?>
15 Tee kuvasta julkaisun pakollinen vaatimus

Kuvia sisältävät viestit saavat usein enemmän katselukertoja kuin ne, joissa ei ole kuvia. Avaa functions.php-tiedosto tehdäksesi niistä pakollisia.

add_action('save_post', 'wpds_check_thumbnail');
add_action('admin_notices', 'wpds_thumbnail_error');
  
function wpds_check_thumbnail( $post_id) {
 // change to any custom post type
  if( get_post_type($post_id) != 'post')       return;
  
  if (! has_post_thumbnail( $post_id)) {
   // set a transient to show the users an admin message
    set_transient( "has_post_thumbnail", "no" );
   // unhook this function so it doesn't loop infinitely
    remove_action('save_post', 'wpds_check_thumbnail');
   // update the post set it to draft
    ks29so_update_post(array('ID' => $post_id, 'post_status' => 'draft'));
  
    add_action('save_post', 'wpds_check_thumbnail');
  } else {
    delete_transient( "has_post_thumbnail" );
  }
}
  
function wpds_thumbnail_error() {
 // check if the transient is set, and display the error message
  if (get_transient( "has_post_thumbnail") == "no") {
    echo "<div id='message' class='error'><p><strong>You must add a Featured Image before publishing this. Don't panic, your post is saved.</strong></p></div>";
    delete_transient( "has_post_thumbnail" );
  }
}
16 Ohjaa tietylle sivulle rekisteröinnin jälkeen

Avaa functions.php-tiedosto ja lisää alla oleva koodi.

function __my_registration_redirect(){
    return home_url( '/my-page' );
}
add_filter( 'registration_redirect', '__my_registration_redirect' );
 
#17. Insert Ads in Post
Use this code in your functions.php file to wrap ads in a post in any place you want.
Hack
function googleadsense($content){
  $adsensecode = 'Your Ad Codes Here';
  $pattern = '<!-googlead->';
  $content = str_replace($pattern, $adsensecode, $content);
  return $content;     
}
add_filter('the_content', 'googleadsense');
18 Käytä lyhytkoodeja mainosten näyttämiseen

Valitse paikka, johon haluat lisätä mainoksen ja liitä seuraava koodi osoitteeseen functions.php.

function showads() {
    return '
AD'S CODE HERE
';
}
add_shortcode('adsense', 'showads');
19 Näytä eniten kommentoidut viestit

Lisää seuraava koodi functions.php-tiedostoon näyttääksesi eniten kommentteja sisältävät viestit.

function wpb_most_commented_posts() {
ob_start();?>
<ul class="most-commented">
<?php
$query = new
WP_Query('orderby=comment_count&posts_per_page=10');
while($query->have_posts()): $query->the_post(); ?>
<li><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a> <span class="wpb-comment-count"><?php comments_popup_link('No Comments;', '1 Comment', '% Comments'); ?></span></li>
<?php endwhile; ?>
</ul>
<?php// Turn off output buffering
$output = ob_get_clean();
return $output; }
add_shortcode('wpb_most_commented', 'wpb_most_commented_posts');
add_filter('widget_text', 'do_shortcode');
20 Ota Featured Image Support käyttöön

Suurin osa WordPress-teemoista tukee esiteltyjä kuvia, mutta jos omasi ei tue, voit ottaa sen käyttöön lisäämällä tämän functions.php-tiedostoon.

add_theme_support( 'post-thumbnails' );
21 Näytä uusimmat kommentit

Käytä tätä koodia missä tahansa silmukassa näyttääksesi viisi viimeisintä kommenttia.

<?php
$query = "SELECT * from $wpdb->comments WHERE comment_approved= '1'
ORDER BY comment_date DESC LIMIT 0 ,5";
$comments = $wpdb->get_results($query);
if ($comments) {
echo '<ul>';
foreach ($comments as $comment) {
$url = '<a href="'. get_permalink($comment->comment_post_ID).'#comment-'.$comment->comment_ID .'" title="'.$comment->comment_author .' | '.get_the_title($comment->comment_post_ID).'">';
echo '<li>';
echo '<div class="img">';
echo $url;
echo get_avatar( $comment->comment_author_email, $img_w);
echo '</a></div>';
echo '<div class="txt">Par: ';
echo $url;
echo $comment->comment_author;
echo '</a></div>';
echo '</li>';
}
echo '</ul>';
}
?>

Oletko valmis hakkeroimaan?

Käytä näitä käteviä parannuksia ja paranna WordPress-sivustosi toimivuutta!

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More