return; } $url = $this->get_attachment_url(); if ( empty( $url ) ) { return; } $this->redirect->do_unsafe_redirect( $url, 301 ); } /** * Checks if certain archive pages are disabled to determine if a archive redirect is needed. * * @codeCoverageIgnore * * @return bool Whether or not to redirect an archive page. */ protected function need_archive_redirect() { if ( $this->options->get( 'disable-date', false ) && $this->current_page->is_date_archive() ) { return true; } if ( $this->options->get( 'disable-author', false ) && $this->current_page->is_author_archive() ) { return true; } if ( $this->options->get( 'disable-post_format', false ) && $this->current_page->is_post_format_archive() ) { return true; } return false; } /** * Retrieves the attachment url for the current page. * * @codeCoverageIgnore It wraps WordPress functions. * * @return string The attachment url. */ protected function get_attachment_url() { /** * Allows the developer to change the target redirection URL for attachments. * * @api string $attachment_url The attachment URL for the queried object. * @api object $queried_object The queried object. * * @since 7.5.3 */ return \apply_filters( 'wpseo_attachment_redirect_url', \wp_get_attachment_url( \get_queried_object_id() ), \get_queried_object() ); } /** * Redirects away query variables that shouldn't work. * * @param array $query_vars The query variables in the current URL. * @param string $base_url The base URL without query string. * * @return void */ private function do_date_redirect( $query_vars, $base_url ) { foreach ( $this->date_query_variables as $variable ) { unset( $query_vars[ $variable ] ); } $url = $base_url; if ( \count( $query_vars ) > 0 ) { $url .= '?' . \http_build_query( $query_vars ); } $this->redirect->do_safe_redirect( $url, 301 ); } /** * Strips `cat=-1` from the URL and redirects to the resulting URL. */ public function category_redirect() { /** * Allows the developer to keep cat=-1 GET parameters * * @since 19.9 * * @param bool $remove_cat_parameter Whether to remove the `cat=-1` GET parameter. Default true. */ $should_remove_parameter = \apply_filters( 'wpseo_remove_cat_parameter', true ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Data is not processed or saved. if ( $should_remove_parameter && isset( $_GET['cat'] ) && $_GET['cat'] === '-1' ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Data is not processed or saved. unset( $_GET['cat'] ); if ( isset( $_SERVER['REQUEST_URI'] ) ) { // phpcs:ignore WordPress.Security.ValidatedSanitizedInput -- This is just a replace and the data is never saved. $_SERVER['REQUEST_URI'] = \remove_query_arg( 'cat' ); } $this->redirect->do_safe_redirect( $this->url->recreate_current_url(), 301, 'Stripping cat=-1 from the URL' ); } } } bots_txt_helper->add_disallow( '*', '/wp-json/' ); $robots_txt_helper->add_disallow( '*', '/?rest_route=' ); } /** * Add a disallow rule for AdsBot agents to robots.txt. * * @param Robots_Txt_Helper $robots_txt_helper The robots txt helper. * * @return void */ public function add_disallow_adsbot( Robots_Txt_Helper $robots_txt_helper ) { $robots_txt_helper->add_disallow( 'AdsBot', '/' ); } /** * Replaces the default WordPress robots.txt output. * * @param string $robots_txt Input robots.txt. * * @return string */ protected function remove_default_robots( $robots_txt ) { return \preg_replace( '`User-agent: \*[\r\n]+Disallow: /wp-admin/[\r\n]+Allow: /wp-admin/admin-ajax\.php[\r\n]+`', '', $robots_txt ); } /** * Adds XML sitemap reference to robots.txt. * * @return void */ protected function maybe_add_xml_sitemap() { // If the XML sitemap is disabled, bail. if ( ! $this->options_helper->get( 'enable_xml_sitemap', false ) ) { return; } $this->robots_txt_helper->add_sitemap( \esc_url( WPSEO_Sitemaps_Router::get_base_url( 'sitemap_index.xml' ) ) ); } /** * Adds subdomain multisite' XML sitemap references to robots.txt. * * @return void */ protected function add_subdirectory_multisite_xml_sitemaps() { // If not on a multisite subdirectory, bail. if ( ! \is_multisite() || \is_subdomain_install() ) { return; } $sitemaps_enabled = $this->get_xml_sitemaps_enabled(); foreach ( $sitemaps_enabled as $blog_id => $is_sitemap_enabled ) { if ( ! $is_sitemap_enabled ) { continue; } $this->robots_txt_helper->add_sitemap( \esc_url( \get_home_url( $blog_id, 'sitemap_index.xml' ) ) ); } } /** * Retrieves whether the XML sitemaps are enabled, keyed by blog ID. * * @return array */ protected function get_xml_sitemaps_enabled() { $is_allowed = $this->is_sitemap_allowed(); $blog_ids = $this->get_blog_ids(); $is_enabled = []; foreach ( $blog_ids as $blog_id ) { $is_enabled[ $blog_id ] = $is_allowed && $this->is_sitemap_enabled_for( $blog_id ); } return $is_enabled; } /** * Retrieves whether the sitemap is allowed on a sub site. * * @return bool */ protected function is_sitemap_allowed() { $options = \get_network_option( null, 'wpseo_ms' ); if ( ! $options || ! isset( $options['allow_enable_xml_sitemap'] ) ) { // Default is enabled. return true; } return (bool) $options['allow_enable_xml_sitemap']; } /** * Retrieves whether the sitemap is enabled on a site. * * @param int $blog_id The blog ID. * * @return bool */ protected function is_sitemap_enabled_for( $blog_id ) { if ( ! $this->is_yoast_active_on( $blog_id ) ) { return false; } $options = \get_blog_option( $blog_id, 'wpseo' ); if ( ! $options || ! isset( $options['enable_xml_sitemap'] ) ) { // Default is enabled. return true; } return (bool) $options['enable_xml_sitemap']; } /** * Determines whether Yoast SEO is active. * * @param int $blog_id The blog ID. * * @return bool */ protected function is_yoast_active_on( $blog_id ) { return \in_array( 'wordpress-seo/wp-seo.php', (array) \get_blog_option( $blog_id, 'active_plugins', [] ), true ) || $this->is_yoast_active_for_network(); } /** * Determines whether Yoast SEO is active for the entire network. * * @return bool */ protected function is_yoast_active_for_network() { $plugins = \get_network_option( null, 'active_sitewide_plugins' ); if ( isset( $plugins['wordpress-seo/wp-seo.php'] ) ) { return true; } return false; } /** * Retrieves the blog IDs of public, "active" sites on the network. * * @return array */ protected function get_blog_ids() { $criteria = [ 'archived' => 0, 'deleted' => 0, 'public' => 1, 'spam' => 0, 'fields' => 'ids', 'network_id' => \get_current_network_id(), ]; return \get_sites( $criteria ); } } الرئيسية الأرشيف : الصفحة 216 من 513 : أزاميل

الرئيسية

صفحة لآخر منشورات موقع أزاميل. وتتضمن مئات المنشورات وفقا لتتابع نشرها زمنيا.

شاهد عمليات بغداد تطوق مقر كتائب حزب الله في بغداد دون تحرير المختطفين الأتراك

كتائب حزب الله العراق

ازاميل/ وكالات: أسفرت اشتباكات عنيفة بين قوة من الجيش العراقي وعناصر من «كتائب حزب الله» في بغداد، عن قتل وإصابة أربعة عسكريين، بينما كانت القوة في مهمة للبحث عن خاطفي …

أكمل القراءة »

شاهد مخيمات اللاجئين السوريين في هامبورغ بألمانيا ومعاناتهم فيها

شاهد مخيمات اللاجئين السوريين في هامبورغ بألمانيا وقال محلل ازاميل السياسي إن هذه الخيم مجهزة بكل ما هو ضروري وقد اعدت كما يبدو بسبب العدد الكبير للاجئين ريثما تجد السلطات …

أكمل القراءة »

شاهد لحظة وصول جثامين 45 جنديا إماراتيا لبلادهم سقطوا في اليمن

  https://youtu.be/dO4A925Jf_Q

أكمل القراءة »

شاهد متظاهري ساحة التحرير يهتفون ضد مدحت المحمود “الخايف خل يتكتر عدنا اطلابه ويه الخضراء”

هتف متظاهرون غاضبون، اليوم الجمعة، ضد رئيس مجلس القضاء الاعلى محملين اياه مسؤلية الخراب واستشراء الفساد في البلاد.. وردد متظاهرون غاضبون وسط ساحة التحرير” الخايف خل يتكتر عدنه اطلابة ويه …

أكمل القراءة »

اردوغان : عندما رأيت صورة الطفل السوري انهاريت..ودول اوروبا هي المتهمة والمسؤولة عما جرى!

عبر الرئيس التركي رجب طيب اردوغان، عن مشاعره ازاء مشاهدته صورة الطفل الان. وتحدث اردوغان لوسائل الاعلام التركية: “عندما رأيت صورة الطفل الان كنت جالسا مع عائلتي واحفادي والذين شاهدوا …

أكمل القراءة »

مواقع خليجية تشن حملة ضد أدونيس لمنحه جائزة سلام ألمانية لأنه “شخص لا علاقة له بالسلام” !

 تداولت مواقع عربية خبرا عن نيل الشاعر والمفكر ادونيس جائزة ألمانية، اكدت فيها وجود انتقادات حادة لمنحه الجائزة لأنه “شخص لا علاقة له بالسلام”، فيما اعتبر صحفي سوري أن منح …

أكمل القراءة »

ليبراسيون: لماذا طافت هذه الصورة العالم؟..لأنها تقول لنا: انظروا لهذا الرعب..كم أصبح عاديا !

في حديث مع صحيفة “ليبراسيون” الفرنسية، بعنوان “الصورة التي تخاطب الجبن فينا”، وترجمته – رفيقة محجوب، علّق المصور الصحافي Alain Mingam على الصورة الصادمة للطفل السوري الغريق آلان كردي. وهنا …

أكمل القراءة »

بالفيديو..مقتل ٤٥ جنديا إماراتيا و5 بحرينيين بصاروخ توتشكا..وعبد الخالق عبد الله يتوعد إيران لأنها “صنعت الصاروخ”

اعلنت وكالة انباء الامارات في حصيلة جديدة مقتل ٤٥ جنديا اماراتيا وخمس جنود بحرينيين الجمعة بانفجار مستودع للاسلحة في اليمن. ولم تحدد الوكالة ظروف مقتل الجنود، فيما اكدت مصادر عسكرية …

أكمل القراءة »

بالفيديو: طالب يرقص وسط 4 بنات يشتبكن بمعركة شرسة في ثانوية أمريكية!

قام الطالب، براندون سميث، بهاتفه النقال بتصوير معركة حقيقية بين اربع بنات بالثانوية، والطريف ان طالباً كان مشغولا بالرقص بين الفتيات المتعاركات! والحادث جرى في مدرسة ثانوية بولاية تكساس الأمريكية، …

أكمل القراءة »

بالفيديو..الكاميرا ترافق شابة سورية جريئة 3000كم عبر أوروبا حتى لحظة طلبها اللجوء بالسويد

بي بي سي الإخبارية، قصة رحلة مهاجرة سورية، نور عمار

مع استمرار الصراع في سوريا وعدم ظهور علامات على قرب انتهائه، فر أكثر من أربعة ملايين سوري من بلادهم بحثا عن حياة جديدة في مكان آخر. وانتهى المطاف بنحو 3 …

أكمل القراءة »

المصورة التركية التي التقطت صورة الطفل السوري الغريق تصف مشاعرها حين رأته لأول مرة

أكدت المصورة التركية، التي التقطت صور جثة الطفل السوري في الثالثة، إيلان والتي صدمت العالم، الخميس، أنها أصيبت بـ«الجمود» عندما شاهدته على شاطئ في مدينة بودروم السياحية جنوب غرب تركيا. …

أكمل القراءة »

بالفيديو..نجوم ألمانيا يتضامنون مع اللاجئين السوريين وبايرن ميونيخ يتبرع بمليون يورو ويفتح ملاعبه لأطفالهم

أعلن نادي بايرن ميونيخ الألماني لكرة القدم عن تبرعه بمليون يورو (1.1 مليون دولار) لصالح قضية اللاجئين. كما هتف عشاق البوندسليغا لاستقبالهم، وفتح مخيماته الرياضية للإهتمام بالأطفال السوريين. اما شعار متضامنون مع اللاجئين السوريين، …

أكمل القراءة »