簡體   English   中英

從插件修剪推文

[英]Trim tweets from plugin

我正在使用這個Wordpress插件

https://smashballoon.com/custom-twitter-feeds/demo

我想將推文調整為120個字符。

我沒有JS技能,卻很少有php-我嘗試了發現的這個,但是我根本不知道它是否相關。

$twitter_feed = (strlen($twitter_feed) > 120) ? substr($twitter_feed,0,10).'...' : $twitter_feed;
enter code here

我還嘗試編輯我的工作代碼,以修整我的帖子標題以適應不起作用的情況。

    function custom_trim_my_tweet( $twitter_feed ) {
        global $uncode_vc_index; 
        if ( is_singular() && !$uncode_vc_index )
            return $twitter_feed;

$twitter_feed = wp_trim_words( $twitter_feed, 9 );
    return $twitter_feed; 
}
add_filter( 'ctf-tweet-text', 'custom_trim_my_tweet' );

要使用JavaScript修剪文本,請執行以下操作:

首先,您必須使用CSS選擇器選擇元素。 如果可以使用元素ID選擇元素,這是最簡單的,例如:

var tweet = document.getElementById("my_tweet_id");

然后,您可以使用element.innerText獲取元素的文本內容

var tweetText = tweet.innerText;

然后,您可以使用string.substring()簡單削減元素內文本的長度。

tweet.innerText = tweetText.substring(0, 120);

老實說,我認為您應該嘗試在插件/ wordpress / php級別修復此問題,而不是在JavaScript中剪切文本。 但是,如果您要這樣做,那么上面的方法將起作用。

編輯:如果tweet元素沒有唯一的ID,則您必須選擇所有ID,然后遍歷每個元素並執行文本剪切。 我會給你一個例子來做到這一點:

您可能需要對CSS選擇器有所創意,具體取決於推文的顯示方式。

在我的例子,我會假設你有一個div ID為'tweets'那則擁有五個獨立div元素,每個鳴叫,所有具有相同類的'single-tweet'

首先,我們獲得所有'single-tweet'元素:

var tweets = document.querySelectorAll('#tweets .single-tweet');

tweets現在包含五個'single-tweet' div的節點列表。

然后,我們使用.forEach()遍歷它們, .forEach()每個元素進行文本剪切。

tweets.forEach( (tweet) => {
    tweet.innerText = tweet.innerText.substring(0, 120);
})

現在,所有'single-tweet'元素都將包含將文本縮減為120個字符后剩下的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM