Jump to content
php.lv forumi

Vajag izdzēst daļu teksta pirms izvadīšanas


Uldis

Recommended Posts

Tātad izmantoju sekojošu f-ju priekš WP postiem -

 

function limit_content($str, $length) {

$str = strip_tags($str);

$str = explode(" ", $str);

return implode(" " , array_slice($str, 0, $length));

}

 

izsaucu f-ju caur <?php echo limit_content($post->post_content, 30); echo '...'; ?>

 

Problēma ir tā, ka izvadāmie dati satur nevēlamas kodu daļas, piem.,

 

[flagallery gid=87 name="DouglasHannant" w=400 h=550] un

[caption id=attachment_3900" align="alignright" width="101" caption="Foto: Dreamstime][/caption]

 

Kā šīs abas skriptu daļas dabūt ārā no $str ?

Link to comment
Share on other sites

Kadēļ vienkārši neizmantot excerpt?

 

Šķiet, ka tas bija saistīts ar WP tēmu - kaut kā ar excerpt neizdevās izvadīt vēlamo simbolu garumu - viņš meta ārā visu rakstu. Ja nekas labāks neatradīsies, protams pamēģināšu vēlreiz pastudēt par excerpt f-ju.

 

Pamēģināju - it kā viss notiekas, vienīgi galīgi nepatīk, ka tekstā jaunās rindkopas nav pārnestas uzreiz aiz iepriekšējā teikuma beigām. Respektīvi beidzas teikums, tad ir milzīga atstarpe un tikai nākamajā rindā sākas teksts. Kā šo salabot?

Edited by Uldis
Link to comment
Share on other sites

Pamēģināju vēl šādi -

$string = str_replace("\t",'',$string);

, bet tukšie tabi tāpat netiek izdzēsti.

 

arī atrastais

 $output2=the_excerpt();
$output2 = str_replace(array("\r\n", "\r", "\n", "\t"), ' ', $output2);
echo $output2; 

nepalīdz.

Edited by Uldis
Link to comment
Share on other sites

Paraadi kaa tu to lieto.

 

vispirms funkcijās nodefinēju

 function new_excerpt_length($length) {
return 20;
}
add_filter('excerpt_length', 'new_excerpt_length');

 

pēc tam jau index.php mēģinu izvadīt kopsavilkumu

<?php the_excerpt(); ?> 

.

Edited by Uldis
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...