نمایش نتایج: از شماره 1 تا 10 , از مجموع 10

موضوع: چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

  1. #1
    عضو انجمن saeed.spore آواتار ها
    تاریخ عضویت
    Mar 2011
    محل سکونت
    اصفهان نصف جهان
    نوشته ها
    563
    تشکر تشکر کرده 
    570
    تشکر تشکر شده 
    709
    تشکر شده در
    443 پست

    پیش فرض چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

    سلام اساتید بزرگوار
    من میخوام اون مطالبی که مثلا دارای کلمه دانلود هستند را از لیست RSS زیر حذف کنم
    چطور میتونم خودم از روش شرط گذاری استفاده کردم ولی
    اگه شرط بگذارم هیچ مطلبی دیگه ای را نمایش نمیده

    کد PHP:
    //شرط منع کلمه

    $mystring $item_title;
    $findme   'دانلود ';
    $pos strpos($mystring$findme);


    if (
    $pos === false) {



    میشه اساتید راهنمایی کنید

    کد PHP:
    <?php
    echo '<meta charset="UTF-8">';

    error_reporting(E_ALL);

    $xml file_get_contents('http://yoursite.com/feed/');

    // MUNG THE XML BECAUSE WE DO NOT HAVE THE NAMESPACE INFORMATION
    $xml str_replace('content:encoded''content__encoded'$xml);
    $xml str_replace('isc:',            'isc__',            $xml);

    // CONVERT THE XML TO AN OBJECT
    $obj SimpleXML_Load_String($xml'SimpleXMLElement'LIBXML_NOCDATA);


    // GET SOME FIELDS
    foreach($obj->channel->item as $item)
    {
      
    $item_title $item->title;
      
    $item_link $item->link;
      
    $item_description $item->description;
      
    $item_enclosure $item->enclosure->attributes()->url;
      echo 
    "<br/><strong>$item_title</strong> $item_description<br/>$item_enclosure";
    }
    ?>
    تبدیل و طراحی قالب ها وردپرس/ WHMCS / جوملا / دیتالایف انجین / نیوک 8.2 و 8.3 / سیستم ها آپلود سنتر
    شماره های تماس : 09398001743 - 09132285902
    تلگرام : https://telegram.me/saeed0pc1


  2. # ADS




     

  3. #2
    عضو انجمن rezaonline.net آواتار ها
    تاریخ عضویت
    Apr 2012
    محل سکونت
    Sanandaj | Tehran
    نوشته ها
    939
    تشکر تشکر کرده 
    1,556
    تشکر تشکر شده 
    2,338
    تشکر شده در
    1,230 پست

    پیش فرض پاسخ : چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

    کد:
    <?php
    echo '<meta charset="UTF-8">';
    
    error_reporting(E_ALL);
    
    $xml = file_get_contents('http://yoursite.com/feed/');
    
    // MUNG THE XML BECAUSE WE DO NOT HAVE THE NAMESPACE INFORMATION
    $xml = str_replace('content:encoded', 'content__encoded', $xml);
    $xml = str_replace('isc:',            'isc__',            $xml);
    
    // CONVERT THE XML TO AN OBJECT
    $obj = SimpleXML_Load_String($xml, 'SimpleXMLElement', LIBXML_NOCDATA);
    
    
    // GET SOME FIELDS
    foreach($obj->channel->item as $item)
    {
      $item_title = $item->title;
      $item_link = $item->link;
      $item_description = $item->description;
      $item_enclosure = $item->enclosure->attributes()->url;
      
      
    	// check
    	$mystring = $item_title;
    	$findme   = 'دانلود ';
    	$pos = strpos($mystring, $findme);
    	if($pos)
    		continue;
    	
      echo "<br/><strong>$item_title</strong> $item_description<br/>$item_enclosure";
    }
    ?>

  4. تعداد تشکر ها ازrezaonline.net به دلیل پست مفید


  5. #3
    عضو انجمن saeed.spore آواتار ها
    تاریخ عضویت
    Mar 2011
    محل سکونت
    اصفهان نصف جهان
    نوشته ها
    563
    تشکر تشکر کرده 
    570
    تشکر تشکر شده 
    709
    تشکر شده در
    443 پست

    پیش فرض پاسخ : چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

    نقل قول نوشته اصلی توسط rezaonline.net نمایش پست ها
    کد:
    <?php
    echo '<meta charset="UTF-8">';
    
    error_reporting(E_ALL);
    
    $xml = file_get_contents('http://yoursite.com/feed/');
    
    // MUNG THE XML BECAUSE WE DO NOT HAVE THE NAMESPACE INFORMATION
    $xml = str_replace('content:encoded', 'content__encoded', $xml);
    $xml = str_replace('isc:',            'isc__',            $xml);
    
    // CONVERT THE XML TO AN OBJECT
    $obj = SimpleXML_Load_String($xml, 'SimpleXMLElement', LIBXML_NOCDATA);
    
    
    // GET SOME FIELDS
    foreach($obj->channel->item as $item)
    {
      $item_title = $item->title;
      $item_link = $item->link;
      $item_description = $item->description;
      $item_enclosure = $item->enclosure->attributes()->url;
      
      
        // check
        $mystring = $item_title;
        $findme   = 'دانلود ';
        $pos = strpos($mystring, $findme);
        if($pos)
            continue;
        
      echo "<br/><strong>$item_title</strong> $item_description<br/>$item_enclosure";
    }
    ?>
    مشکل داره همینطور منم درست کردم ولی
    صفحه را خالی میکنه ؟ روشی اساتید محترم دم دست ندارند

    - - - Updated - - -

    ویرایش توسط saeed.spore : June 8th, 2016 در ساعت 23:57
    تبدیل و طراحی قالب ها وردپرس/ WHMCS / جوملا / دیتالایف انجین / نیوک 8.2 و 8.3 / سیستم ها آپلود سنتر
    شماره های تماس : 09398001743 - 09132285902
    تلگرام : https://telegram.me/saeed0pc1


  6. #4
    عضو دائم T.Toosi آواتار ها
    تاریخ عضویت
    Jun 2015
    نوشته ها
    1,071
    تشکر تشکر کرده 
    278
    تشکر تشکر شده 
    2,936
    تشکر شده در
    1,329 پست

    پیش فرض پاسخ : چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

    مشکل داره همینطور منم درست کردم ولی
    صفحه را خالی میکنه ؟ روشی اساتید محترم دم دست ندارند
    سلام، یعنی چی صفحه را خالی میکند ؟ صفحه سفید نمایش میدهد؟ ممکن است شرط در تمامی $item_title پیدا میکند که چیزی نمایش نمیدهد، آدرس فید هم قرار دهید چک کنم.

  7. تعداد تشکر ها از T.Toosi به دلیل پست مفید


  8. #5
    عضو انجمن saeed.spore آواتار ها
    تاریخ عضویت
    Mar 2011
    محل سکونت
    اصفهان نصف جهان
    نوشته ها
    563
    تشکر تشکر کرده 
    570
    تشکر تشکر شده 
    709
    تشکر شده در
    443 پست

    پیش فرض پاسخ : چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

    ببینید من echo. را داخل شرط قرار دادم دیگه هیچ چیزی را نمایش نمیده
    سایت http://www.11-taktaraneh.com/
    تبدیل و طراحی قالب ها وردپرس/ WHMCS / جوملا / دیتالایف انجین / نیوک 8.2 و 8.3 / سیستم ها آپلود سنتر
    شماره های تماس : 09398001743 - 09132285902
    تلگرام : https://telegram.me/saeed0pc1


  9. #6
    عضو انجمن saeed.spore آواتار ها
    تاریخ عضویت
    Mar 2011
    محل سکونت
    اصفهان نصف جهان
    نوشته ها
    563
    تشکر تشکر کرده 
    570
    تشکر تشکر شده 
    709
    تشکر شده در
    443 پست

    پیش فرض پاسخ : چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

    نقل قول نوشته اصلی توسط T.Toosi نمایش پست ها
    سلام، یعنی چی صفحه را خالی میکند ؟ صفحه سفید نمایش میدهد؟ ممکن است شرط در تمامی $item_title پیدا میکند که چیزی نمایش نمیدهد، آدرس فید هم قرار دهید چک کنم.
    من میخوام تایتل هایی که دارای کلمه مویک ویدئو هستند از لیست Feed حذف کنم
    دانلود موزیک ویدئوی Justin Bieber – Company

    تبدیل و طراحی قالب ها وردپرس/ WHMCS / جوملا / دیتالایف انجین / نیوک 8.2 و 8.3 / سیستم ها آپلود سنتر
    شماره های تماس : 09398001743 - 09132285902
    تلگرام : https://telegram.me/saeed0pc1


  10. #7
    عضو دائم T.Toosi آواتار ها
    تاریخ عضویت
    Jun 2015
    نوشته ها
    1,071
    تشکر تشکر کرده 
    278
    تشکر تشکر شده 
    2,936
    تشکر شده در
    1,329 پست

    پیش فرض پاسخ : چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

    کد PHP:
    <?php
    echo '<meta charset="UTF-8">';

    error_reporting(E_ALL);

    $xml file_get_contents('http://yoursite.com/feed/');

    // MUNG THE XML BECAUSE WE DO NOT HAVE THE NAMESPACE INFORMATION
    $xml str_replace('content:encoded''content__encoded'$xml);
    $xml str_replace('isc:',            'isc__',            $xml);

    // CONVERT THE XML TO AN OBJECT
    $obj SimpleXML_Load_String($xml'SimpleXMLElement'LIBXML_NOCDATA);


    // GET SOME FIELDS
    foreach($obj->channel->item as $item)
    {
      
    $item_title $item->title;
      
    $item_link $item->link;
      
    $item_description $item->description;
      
    $item_enclosure $item->enclosure->attributes()->url;

        if(
    strpos($item_title'موزیک ویدئو')) return;
        echo 
    "<br/><strong>$item_title</strong> $item_description<br/>$item_enclosure";
    }
    ?>

  11. #8
    عضو انجمن saeed.spore آواتار ها
    تاریخ عضویت
    Mar 2011
    محل سکونت
    اصفهان نصف جهان
    نوشته ها
    563
    تشکر تشکر کرده 
    570
    تشکر تشکر شده 
    709
    تشکر شده در
    443 پست

    پیش فرض پاسخ : چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

    نقل قول نوشته اصلی توسط t.toosi نمایش پست ها
    کد PHP:
    <?php
    echo '<meta charset="utf-8">';

    error_reporting(e_all);

    $xml file_get_contents('http://yoursite.com/feed/');

    // mung the xml because we do not have the namespace information
    $xml str_replace('content:encoded''content__encoded'$xml);
    $xml str_replace('isc:',            'isc__',            $xml);

    // convert the xml to an object
    $obj simplexml_load_string($xml'simplexmlelement'libxml_nocdata);


    // get some fields
    foreach($obj->channel->item as $item)
    {
      
    $item_title $item->title;
      
    $item_link $item->link;
      
    $item_description $item->description;
      
    $item_enclosure $item->enclosure->attributes()->url;

        if(
    strpos($item_title'موزیک ویدئو')) return;
        echo 
    "<br/><strong>$item_title</strong> $item_description<br/>$item_enclosure";
    }
    ?>

    خیلی ممنون کار کرد ولی مشکلی که هست اینه که الان تا مطلبی که موزیک ویدئوی میرسته اون مطلب را نمایش میده و بقیه را نمایش نمیده
    یک سوال استاد
    میشه از آرایه برای لیست کلماتی که منع میخوام بکنیم در rss استفاده کرد مثلا
    به این شکل
    ؟!

    $targets = array('موزیک ویدئوی', 'دانلود موزیک ویدئوی' );
    if(strpos($item_title, $targets)) return;
    ویرایش توسط saeed.spore : June 9th, 2016 در ساعت 13:08
    تبدیل و طراحی قالب ها وردپرس/ WHMCS / جوملا / دیتالایف انجین / نیوک 8.2 و 8.3 / سیستم ها آپلود سنتر
    شماره های تماس : 09398001743 - 09132285902
    تلگرام : https://telegram.me/saeed0pc1


  12. #9
    عضو انجمن
    تاریخ عضویت
    Oct 2015
    نوشته ها
    788
    تشکر تشکر کرده 
    569
    تشکر تشکر شده 
    1,269
    تشکر شده در
    882 پست

    پیش فرض پاسخ : چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

    سلام
    اینو همینطوری بر اساس کد معرفی شده در این لینک http://wordpress.stackexchange.com/q...post-from-feed نوشتم خودم وردپرس نداشتم تستش کنم نمی دونم کار میکنه یا نه.
    باید در فایل functions.php قالب بذاریدش خودکار واژه هایی که در آرایه bad_titles است رو قراره که انشاءالله از rss حذف کنه

    کد:
    <?php
    function rss_exclude_filter($query){
        global $wpdb;
        if (!$query->is_admin && $query->is_feed) {
            $bad_titles = array('موزیک ویدئو', 'تست ویدئو');
            $bad_posts = array();
            foreach ($bad_titles as $title){
                $posts = $wpdb->get_col("select ID from $wpdb->posts where post_title LIKE '%$title%' ");
                foreach ($posts as $post){
                    $bad_posts[] = $post;
                }
            }
            $query->set('post__not_in', $bad_posts);
        }
        return $query;
    }
    add_filter('pre_get_posts', 'rss_exclude_filter');
    ?>
    البته ظاهراً با افزونه https://wordpress.org/plugins/stealth-publish/ هم می تونید براحتی این کار رو انجام بدید.

  13. #10
    عضو انجمن saeed.spore آواتار ها
    تاریخ عضویت
    Mar 2011
    محل سکونت
    اصفهان نصف جهان
    نوشته ها
    563
    تشکر تشکر کرده 
    570
    تشکر تشکر شده 
    709
    تشکر شده در
    443 پست

    پیش فرض پاسخ : چگونه حذف مطالبی که دارای یک کلمه یا متن خاصی هستند

    نقل قول نوشته اصلی توسط iHSG نمایش پست ها
    سلام
    اینو همینطوری بر اساس کد معرفی شده در این لینک http://wordpress.stackexchange.com/q...post-from-feed نوشتم خودم وردپرس نداشتم تستش کنم نمی دونم کار میکنه یا نه.
    باید در فایل functions.php قالب بذاریدش خودکار واژه هایی که در آرایه bad_titles است رو قراره که انشاءالله از rss حذف کنه

    کد:
    <?php
    function rss_exclude_filter($query){
        global $wpdb;
        if (!$query->is_admin && $query->is_feed) {
            $bad_titles = array('موزیک ویدئو', 'تست ویدئو');
            $bad_posts = array();
            foreach ($bad_titles as $title){
                $posts = $wpdb->get_col("select ID from $wpdb->posts where post_title LIKE '%$title%' ");
                foreach ($posts as $post){
                    $bad_posts[] = $post;
                }
            }
            $query->set('post__not_in', $bad_posts);
        }
        return $query;
    }
    add_filter('pre_get_posts', 'rss_exclude_filter');
    ?>
    البته ظاهراً با افزونه https://wordpress.org/plugins/stealth-publish/ هم می تونید براحتی این کار رو انجام بدید.
    ممنون ولی من برای وردپرس لازم ندارم
    درسته سایت منبع وردپرس هست ولی من برای سیستم دیگه ای دارم این کارا میکنم و مشکل بزرگی که دارم تنها سایتی که به روز و دارای فایل های MP3 همین سایت در ( RSS )
    اگه بتونم یک سری مطالب که دارای اینکلمه هستند را منع کنم از حلقه Foreach خیلی خوب میشه
    تبدیل و طراحی قالب ها وردپرس/ WHMCS / جوملا / دیتالایف انجین / نیوک 8.2 و 8.3 / سیستم ها آپلود سنتر
    شماره های تماس : 09398001743 - 09132285902
    تلگرام : https://telegram.me/saeed0pc1


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. درخواست پنل پیامک حرفه ای با خط اختصاصی خدماتی برای استفاده شخصی بصورت فوری !
    توسط Sohan Roh در انجمن درخواست پنل پیام کوتاه،پیام رسان اجتماعی،تلفن مجازی
    پاسخ ها: 21
    آخرين نوشته: February 16th, 2018, 14:26
  2. سرور اختصاصی ایران 20 هسته ای ( 40 هسته مجازی )
    توسط adnan در انجمن فروش سرور اختصاصی
    پاسخ ها: 0
    آخرين نوشته: November 21st, 2017, 14:16
  3. درخواست سرور اختصاصی برای استفاده شخصی
    توسط tatnet در انجمن درخواست سرور اختصاصی
    پاسخ ها: 16
    آخرين نوشته: November 18th, 2014, 01:50
  4. معرفی دیتاسنتر برای خرید سرور اختصاصی جهت استفاده شخصی
    توسط Cyrus.The.Great در انجمن سرویس دهندگان خارجی
    پاسخ ها: 25
    آخرين نوشته: June 21st, 2013, 19:07
  5. درخواست نمایندگی برای استفاده شخصی+آیپی اختصاصی
    توسط mahdi66 در انجمن نمایندگی میزبانی وب
    پاسخ ها: 5
    آخرين نوشته: June 10th, 2011, 23:07

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •