رفتن به مطلب

Mirrajabi

عضو افتخاری
  • تعداد ارسال‌ها

    586
  • تاریخ عضویت

  • آخرین بازدید

  • روز های برد

    23

نوشته‌ها ارسال شده توسط Mirrajabi

  1. در در 8/6/2016 at 13:18، AdminWeb گفته است :

    سلام

    تعدادی متاباکس تعریف کردم برای یک custom post type و نیاز هست که یه فرم جستجو داشته باشیم که بر اساس داده هایی که توی متاباکس ها وارد شده، جستجو انجام بشه و در صورتی که نتیجه ای در بر داشت، نتایج/نتیجه نمایش داده بشه.

    از افزونه نمیخوام استفاده نمیخوام استفاده کنم

    <?php
    
    // $_GET values - these retrieve the values being sent via the URL, we assign them to strings
    
    $name1 = $_GET['NUMBER_INPUT_NAME'];
    $name2 = $_GET['DATE_INPUT_NAME'];
    
    // wp_query - use the strings in the wp_query
    
    $args = array(
        'post_type'   => 'YOUR_POST_TYPE',
        'posts_per_page' => -1,
        'orderby' => 'post_date',
        'order' => 'DESC',
        'meta_query' => array(
            'relation' => 'OR',
            array(
                'key' => 'NUMBER_META_NAME',
                'value' => $name1,
                'compare' => 'LIKE',
            ),
            array(
                'key' => 'DATE_META_NAME',
                'value' => $name2,
                'compare' => 'LIKE'
            ),
        ),
        'orderby' => array(
            'DATE_META_NAME' => 'ASC',
        ),
    );  
    
    $results = new WP_Query( $args ); if ( $results->have_posts() ) :
    
    $results_count = $results->found_posts; echo $results_count; if ($results_count > 1) { echo ' Results';} else { echo ' Result';}
    
    while ( $results->have_posts() ) : $results->the_post();
    
    the_title();
    
    endwhile; endif;
    
    ?>

    ی نمونه کد از چیزی که می خواید . فقط توجه کنید اسم پست تایپ و اسم متاها تغییر بدید . و هر تعداد متا می خواید کافیه اون array کپی کنید و اضافه کنید .

    • امتیاز 1
  2. در 20 ساعت قبل، بویکا گفته است :

    سلام دوستان یه سوال داشتم .

    من از کدهای زیر برای ایجاد یک متاباکس استفاده کردم . کارش هم اینه که عنوان انگلیسی برای محصول توسط کاربر تعریف میشه

    
    function sub_title_add_meta_box() {
        add_meta_box(
            'sub_title-sub-title',
            __( 'Sub-Title', 'sub_title' ),
            'sub_title_html',
            'product',
            'normal',
            'default'
        );
    }
    add_action( 'add_meta_boxes', 'sub_title_add_meta_box' );
    
    function sub_title_html( $post) {
        wp_nonce_field( '_sub_title_nonce', 'sub_title_nonce' ); ?>
    
        <p>Sub title For Product</p>
    
        <p>
            <label for="sub_title_subtitle"><?php _e( 'subtitle', 'sub_title' ); ?></label><br>
            <input type="text" name="sub_title_subtitle" id="sub_title_subtitle" value="<?php echo sub_title_get_meta( 'sub_title_subtitle' ); ?>">
        </p><?php
    }
    
    function sub_title_save( $post_id ) {
        if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;
        if ( ! isset( $_POST['sub_title_nonce'] ) || ! wp_verify_nonce( $_POST['sub_title_nonce'], '_sub_title_nonce' ) ) return;
        if ( ! current_user_can( 'edit_post', $post_id ) ) return;
    
        if ( isset( $_POST['sub_title_subtitle'] ) )
            update_post_meta( $post_id, 'sub_title_subtitle', esc_attr( $_POST['sub_title_subtitle'] ) );
    }
    add_action( 'save_post', 'sub_title_save' );

    و ویرایش رو به این صورت دستی کردم که فقط تو عناوین جستجو کنه

    
    <?php
    }
    
    
    function search_by_title_only( $search, $wp_query )
    {
        global $wpdb;
        if ( empty( $search ) )
            return $search; // skip processing - no search term in query
        $q = $wp_query->query_vars;
        $n = ! empty( $q['exact'] ) ? '' : '%';
        $search =
        $searchand = '';
        foreach ( (array) $q['search_terms'] as $term ) {
            $term = esc_sql( like_escape( $term ) );
            $search .= "{$searchand}(($wpdb->posts.post_title LIKE '{$n}{$term}{$n}')";
            $searchand = ' AND ';
        }
        if ( ! empty( $search ) ) {
            $search = " AND ({$search}) ";
            if ( ! is_user_logged_in() )
                $search .= " AND ($wpdb->posts.post_password = '') ";
        }
        return $search;
    }
    add_filter( 'posts_search', 'search_by_title_only', 500, 2 );
    
    
    
    
    

     

    جستجو درست کار میکنه ولی من می خوام تو متاباکسی که تعریف کردم هم مقادیر رو جستجو کنه ( متاباکس نام انگلیسی محصولات هستش . می خوام تو اون ها هم جستجو کنه ) با تشکر

    سلام .

    این ادرس دقیقا چیزیکه شما می خواید به دو صورت کدنویسی کرده

    https://stackoverflow.com/questions/24183422/make-woocommerce-product-search-only-search-certain-fields

    این ادرس هم خوبه .

    https://wordpress.stackexchange.com/questions/78649/using-meta-query-meta-query-with-a-search-query-s

    اگه باز هم مشکلتون حل نشد بفرمایید تا بیشتر راهنماییتون کنیم . موفق باشید .

    • امتیاز 2
  3. در در 11/10/2017 at 13:33، حامد قاسمی گفته است :

    سلام 

    من در سایت افزونه easy digital downloads  رو نصب کردم اما دو مشکل دارم 

    1- ریال RIAL نوشته میشه روی دکمه و با اضافه کردن این کد در توابع وردپرس هم این متن ارور رو همراه تغییر به ریال میده 

     

    کد :

    function pw_edd_change_currency_sign( $formatted, $currency, $price ) {
    return $price . ' ریال';
    }
    add_filter( 'edd_rial_currency_filter_after', 'pw_edd_change_currency_sign', ۱۰, ۳ );
    add_filter( 'edd_rial_currency_filter_before', 'pw_edd_change_currency_sign', ۱۰, ۳ );
     
    متن ارور :

    Warning: Missing argument 1 for pw_edd_change_currency_sign(), called in /home3/andaymus/public_html/adafile/wp-includes/class-wp-hook.php on line 296 and defined in /home3/andaymus/public_html/adafile/wp-content/themes/my-sahifa-up/functions.php on line 3
     
    2- میخوام وقتی پستی رو در این افزونه ساختم بصورت مستقیم وارد صفحه وبسایت بشه اما این اتفاق نمیفته ! 
     
    ممنون میشم راهنمایی کنید 

    https://mrcode.ir/آموزش-تبدیل-rial-ریال-easy-digital-downloads-وردپرس

    مورد دوم هم در حالت عادی وقتی محصولی میزنیم مستقیم نمایش داده میشه . مگر اینکه قالب شما تنظیماتی داشته باشه .

    • امتیاز 1
  4. در 10 ساعت قبل، unid_user گفته است :

    راهنمایی کنید دوستان لطفا. ممنون :(

    سلام می تونید یک متاباکس برای این پست تایپ ایجاد کنید به عنوان قیمت . بعد مقدار رو وارد کنید تا اون طرف نمایش بده .به عنوان مثال :

    function post_metabox(){
        add_meta_box('add_meta_title','Post expiration date','add_post_metabox','product','normal','high');
    }
    add_action('add_meta_boxes','post_metabox');
    
    function add_post_metabox(){
        global $post;
    
    ?>
    <table>
        <tr>
            <td>قیمت : </td>
            <td><input type="text" name="price_product" value="<?php echo  get_post_meta($post->ID,'_price_product',true); ?>" />قیمت</td>
                      
        </tr>
    </table>
    <?php
        
    }
    function save_post_information(){
        global $post;
        update_post_meta($post->ID,'_price_product',$_POST['price_product']);
    }
    add_action('save_post','save_post_information'); 

    این کد رو در function بزارید .فقط در خط دوم ی جا اسم پست تایپ گذاشتم 'product' شما نام پست تایپتونو تو این قسمت  تغییر بدید.

    • امتیاز 3
  5. در 43 دقیقه قبل، miraziz گفته است :

    ابته الان لود میشه ولی خیلی طول میکشه. قبلا اگر 3 ثانیه طول می کشید الان 20 ثانیه طول میکشه.
    کل افزونه‌ها را غیرفعال کردم و فقط آماره را فعال کردم و باز همون مشکل را داشت.

    قالب غیر فعال کنید یک قالب پیش فرض وردپرس فعال کنید و این افزونه هم نصب باشه . بعد چک کنید ببنید لودش اوکی شده ؟ اگه اوکی شد پس مشکل از قالب شماست .

  6. در 1 ساعت قبل، miraziz گفته است :

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

    در قسمت کدهای مربوط به .post-content هم text align وجود نداره.

    خب اگه می خواید مشکل حل شه باید یکی یکی پلاگین های که اخیر نصب کردید چند دقیقه غیر فعال کنید  ,ببنید آیا مشکل حل میشه یا خیر. و اگه حل نشد برید قسمت استایل چک کنید بببنید از کجا تگ p استایل text-align گرفته .

    • امتیاز 1
  7. در در 8/14/2018 at 11:10، f.rahimi گفته است :

    درود ... من فایلی به اسم page.php ساختم و هدرو فوتر رو لود کردم ... وقتی روی برگه ام توی منو کلیک میکنم از اون فایل میخونه ولی محتویات برگه رو بمن نشون نمیده
    باید کدی بنویسم ؟

    سلام بله .  صفحه page.php  ساختید باید ی حلقه ی بزارید توصفحه که محتوای صفحه  رو بهتون نشون بده به طور مثال مانند

    <?php get_header();?>
    	<section>
            <div class="container">
                        <?php if(have_posts()):while(have_posts()):the_post();
                            global $post;
                        ?>
                            <h1><?php the_title(); ?></h1>
                            <div >
                                <?php 
                                    the_content();
                                ?>
                            </div>
                        <?php endwhile;endif; ?> 
                    	<?php  get_sidebar();  ?> 
            </div>                
        </section>
    <?php get_footer(); ?>   

     

    • امتیاز 2
  8. در 5 دقیقه قبل، miraziz گفته است :

    قبلا کار می کرد. یک روز متوجه شدم که دیگه کار نمیکنه. از کجا میشه فهمید کدوم کد روش تاثیر گذاشته؟

    ببنید تگ <p> داخل ادیتور از ی جای داره استایل text-align می خونه واسه همین وقتی روش میزنید کار نمی کنه . پلاگین جدیدی نصب کردید یا استایل جدیدی اضافه کردید ؟؟ اگر اینکارو کردید غیرفعالش کنید .

  9. در در 8/14/2018 at 23:18، miraziz گفته است :

    سلام. دوستان من وقتی در ویرایشگر متن وردپرس «جهت متن» را می زنم هیچ اتفاقی نمی افتد. این مشکل از چی می تونه باشه؟

    سلام . وقت بخیر .

    احتمال زیاد به دلیل استایل های قالب هست که روی این المان تاثیر میذاره.

    • امتیاز 1
  10. در 13 ساعت قبل، afshin171 گفته است :

    ممنون از لطف شما

    سایت فارسی معرفی کنید

    و برنامه خاصی واسه طراحی یا کد نویسی لازم نیست

    سایت فارسی منبع خئب نمی شناسم .

    برنامه های زیادی هستن .

    من خودم از برنامه visual code استفاده می کنم و راضیم.

    • امتیاز 1
  11. در در 1/5/2018 at 13:45، maraljoon گفته است :

    سلام و درود به اساتید گرامی..

    یک اسلایدر با بوتسترپ (carousel) ساخته شده که تعداد 8 آیتم رو بصورت 2 آیتم 4 تایی نمایش میده. یعنی تو هر آیتم فعال 4 پست نمایش داده میشه و وقتی روی Next کلیک بشه 4 مورد بعدی رو نمایش میده.

    آیا امکان این وجود داره که مثلا تو یک اندازه خاص صفحه نمایش این تعداد تغییر کنه. مثلا 1 مورد یا 2 مورد به جای 4 تا نمایش بده؟؟

    کدهای مربوط به اسلایدر:

    
     <!-- Carousel -->
    <div id="carousel" class="carousel slide" data-ride="carousel" data-interval="false">
    
      <!-- Wrapper for slides -->
      <div class="carousel-inner" role="listbox">
    
        <?php
        // Item size (set here the number of posts for each group)
        $i = 4; 
    
        // Set the arguments for the query
        global $post; 
        $args = array(
      'post_type' => 'product',
      'posts_per_page' => 8,
      'post_status' => 'publish',
      'meta_key' => '_wc_review_count',
      'orderby' => 'meta_value_num'
    );
    
    $query = new WP_Query($args);
    
        // Get the posts
        $myposts = get_posts($args);
    
        // If there are posts
        if($myposts):
    
          // Groups the posts in groups of $i
          $chunks = array_chunk($myposts, $i);
          $html = "";
    
          /*
           * Item
           * For each group (chunk) it generates an item
           */
          foreach($chunks as $chunk):
            // Sets as 'active' the first item
            ($chunk === reset($chunks)) ? $active = "active" : $active = "";
            $html .= '<div class="item '.$active.'"><div class="container"><div class="row">';
      
            /*
             * Posts inside the current Item
             * For each item it generates the posts HTML
             */
            foreach($chunk as $post):
              $html .= '<div class="col-md-3 col-sm-12 col-xs-12">';
              $html .= '<a href="'.get_permalink($post->ID).'">';
              $html .= get_the_post_thumbnail($post->ID); 
              $html .= '<h3>';
              $html .= get_the_title($post->ID);
              $html .= '</h3>';
              $html .= '</a>';
              $html .= '</div>';
            endforeach;
    
            $html .= '</div></div></div>';  
    
          endforeach;
    
          // Prints the HTML
          echo $html;
    
        endif;
        ?>
    
      </div> <!-- carousel inner -->
    
    
      <!-- Controls -->
      <a class="left carousel-control" href="#promo-carousel" role="button" data-slide="prev">
        <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
        <span class="sr-only">Previous</span>
      </a>
      <a class="right carousel-control" href="#promo-carousel" role="button" data-slide="next">
        <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
        <span class="sr-only">Next</span>
      </a>
    
    
    </div> <!-- /carousel -->

     

    242424234.jpg

    سلام . وقت بخیر .

    می تونید با جی کوئری اندازه صفحه رو بگیرید و شرط کنید مثلا از 768 کوچکتر بود متغیر i که مساوی 4 بود بشه 1  

     

    • امتیاز 1
  12. سلام .

    وقت بخیر .

    اول html بعد css بعد jquery بعد php و اگر خواستید با وردپرس طراحی سایت انجام بدید بعدش بایدورپرس یاد بگیرید .

    w3school منبع خوبی برای یادگیری هست بیس بهتون قشنگ اموزش میده و با مثال هم هست که راحتتر یاد بگیرید .

    موفق باشید.

     

    • امتیاز 2
  13. در در 1/4/2018 at 19:08، raooff گفته است :

    سلام من قالب the 7 رو استفاده میکنم و دارم با خود افزونه های وردپرس طراحیش میکنم. ولی یه مشکلی که دارم اینه که وقتی ادامه مطلب رو در ارسال مطالب میزنم فعال میکنم در قالب دکمه ادامه مطلب رو نشون نمیده یا نمیزاره.

    چجوری میتونم درستش کنم؟؟؟

    سلام . خب باید ببنید ایا وقتی دکمه ادامه مطلب تیک میزنید  مقدارش تو دیتابیس ذخیره میشه  یا نه ؟؟ شاید مقدارش ذخیره نمیشه .

×
×
  • اضافه کردن...