<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Wordpress Support &amp; Development</title>
	<atom:link href="https://www.conicsolutions.net/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.conicsolutions.net/</link>
	<description></description>
	<lastBuildDate>Tue, 05 Apr 2022 09:07:36 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://www.conicsolutions.net/wp-content/uploads/2021/10/Conic-Solutions-512px-2.png</url>
	<title>Wordpress Support &amp; Development</title>
	<link>https://www.conicsolutions.net/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>How to get latest posts of custom post type in WordPress</title>
		<link>https://www.conicsolutions.net/wordpress/how-to-get-latest-posts-of-custom-post-type-in-wordpress/</link>
					<comments>https://www.conicsolutions.net/wordpress/how-to-get-latest-posts-of-custom-post-type-in-wordpress/#respond</comments>
		
		<dc:creator><![CDATA[Conic Solutions]]></dc:creator>
		<pubDate>Mon, 04 Apr 2022 21:21:46 +0000</pubDate>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[custom post type]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.conicsolutions.net/?p=847</guid>

					<description><![CDATA[<p>If you have a custom post type on your wordpress website and you want to show the latest posts you are limited with the default wordpress options. You can use some of the plugins to do so, but in the end, do you really want to end up using a plugin for each small feature [&#8230;]</p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/how-to-get-latest-posts-of-custom-post-type-in-wordpress/">How to get latest posts of custom post type in WordPress</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>If you have a custom post type on your wordpress website and you want to show the latest posts you are limited with the default wordpress options.</p>



<p>You can use some of the plugins to do so, but in the end, do you really want to end up using a plugin for each small feature you need? </p>



<p>No.</p>



<p>I guess we will end up with a lot of plugins that are hard to maintain but more than everything you are, unnecessary, spending server resources and you make your website slower.</p>



<p> In this tutorial, I&#8217;m going to show you how to show the latest posts of any custom post type using a simple shortcode with dynamic attributes.</p>



<p>You don&#8217;t need to know to code, just open your functions.php file from your child theme and paste the code below.</p>



<div style="height:36px" aria-hidden="true" class="wp-block-spacer"></div>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
/**
 * Documentation
 * 
 * &#91;cs_get_latest_posts] -&gt; will show list of all posts from selected post type
 * &#91;cs_get_latest_posts post_number=&quot;-1&quot;] -&gt; Number of posts you want to show - default: -1 (means all)
 * &#91;cs_get_latest_posts post_type=&quot;post&quot;] -&gt;Please add post type you want to show (default: post)
 * &#91;cs_get_latest_posts post_status=&quot;publish|draft|any&quot;] -&gt; Choose post status - default:publish
 * &#91;cs_get_latest_posts default_style=&quot;true|false&quot;] -&gt; use default style or not - default:true

 * 
 * We can combine:
 * &#91;cs_get_latest_posts post_number=&quot;6&quot; &quot;post_type=&quot;post&quot;]
 * 
 */

function cs_get_latest_posts($atts) {
    $attributes = shortcode_atts( array(
        &#039;post_number&#039;   =&gt; &#039;-1&#039;,
        &#039;post_status&#039;   =&gt; &#039;publish&#039;,
        &#039;post_type&#039;     =&gt; &#039;post&#039;,
        &#039;default_style&#039; =&gt; &#039;true&#039;
    ), $atts );

    ob_start();

    $args = &#91;
        &#039;post_type&#039; =&gt; $attributes&#91;&#039;post_type&#039;],
        &#039;posts_per_page&#039; =&gt; $attributes&#91;&#039;post_number&#039;],
        &#039;post_status&#039; =&gt; $attributes&#91;&#039;post_status&#039;],
    ];

    $all_posts = new WP_Query($args);

    $posts_config = &#91;];
    if ( ! empty( $all_posts-&gt;posts ) ) {
        foreach ( $all_posts-&gt;posts as $post ) {
            $pre_post = &#91;
                &#039;image&#039; =&gt; get_the_post_thumbnail_url($post-&gt;ID, &#039;medium&#039;),
                &#039;title&#039; =&gt; $post-&gt;post_title,
                &#039;url&#039;   =&gt; get_permalink($post-&gt;ID)
            ];
            $posts_config&#91;] = $pre_post;
        }
    }

    // html ouptut
    $output = &#039;&#039;;
    if ( ! empty( $posts_config ) ) {
        if ( $attributes&#91;&#039;default_style&#039;] == &#039;true&#039; ) {
            $output .= &#039;
                &lt;style&gt;
                    ul.cs-post-type-list {
                        list-style-type: none;
                        margin-left: 0;
                        display: grid;
                        column-gap: 3%;
                        row-gap: 22px;
                        max-width: 1000px;
                        grid-template-columns: 31% 31% 31%;
                        max-width: 1000px;
                    }
                    ul.cs-post-type-list li {
                        border: 1px solid #d1d1d1;
                        padding: 10px;
                        border-radius: 3px;
                    }
                    ul.cs-post-type-list li h4 {
                        font-size: 22px;
                        line-height: 1.4em;
                        font-weight: 500;
                        margin-top: 7px;
                    }
                    ul.cs-post-type-list li .cs-post-type-fimg img {
                        width: 100%;
                        height: 240px;
                        object-fit: cover;
                    }
                    @media all and (max-width: 991px) {
                        ul.cs-post-type-list {
                            grid-template-columns: 100%;
                        }
                    }
                &lt;/style&gt;
            &#039;;
        }
        
        $output .= &#039;&lt;ul class=&quot;cs-post-type-list&quot;&gt;&#039;;
        foreach ( $posts_config as $post_info ) {

            $output .= &#039;&lt;li&gt;&#039;;
            if ( $post_info&#91;&#039;image&#039;] ) $output .= &#039;&lt;div class=&quot;cs-post-type-fimg&quot;&gt;&lt;a href=&quot;&#039;.$post_info&#91;&#039;url&#039;].&#039;&quot;&gt;&lt;img src=&quot;&#039;.$post_info&#91;&#039;image&#039;].&#039;&quot;&gt;&lt;/a&gt;&lt;/div&gt;&#039;;
            $output .= &#039;&lt;h4&gt;&lt;a href=&quot;&#039;.$post_info&#91;&#039;url&#039;].&#039;&quot;&gt;&#039;.$post_info&#91;&#039;title&#039;].&#039;&lt;/a&gt;&lt;/h4&gt;&#039;;
            $output .= &#039;&lt;/li&gt;&#039;;
        }

        $output .= &#039;&lt;/ul&gt;&#039;;
    }

    echo $output;

    return ob_get_clean();
}
add_shortcode( &#039;cs_get_latest_posts&#039;, &#039;cs_get_latest_posts&#039; );
</pre></div>


<div style="height:36px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Below is my example</p>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="906" src="https://www.conicsolutions.net/wp-content/uploads/2022/04/latest-posts-of-the-custom-post-type-1024x906.png" alt="" class="wp-image-854" srcset="https://www.conicsolutions.net/wp-content/uploads/2022/04/latest-posts-of-the-custom-post-type-1024x906.png 1024w, https://www.conicsolutions.net/wp-content/uploads/2022/04/latest-posts-of-the-custom-post-type-300x265.png 300w, https://www.conicsolutions.net/wp-content/uploads/2022/04/latest-posts-of-the-custom-post-type-768x679.png 768w, https://www.conicsolutions.net/wp-content/uploads/2022/04/latest-posts-of-the-custom-post-type-1536x1359.png 1536w, https://www.conicsolutions.net/wp-content/uploads/2022/04/latest-posts-of-the-custom-post-type-1080x955.png 1080w, https://www.conicsolutions.net/wp-content/uploads/2022/04/latest-posts-of-the-custom-post-type.png 1750w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<div style="height:36px" aria-hidden="true" class="wp-block-spacer"></div>



<p>If you have any questions, feel free to ask in the comments 🙂 </p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/how-to-get-latest-posts-of-custom-post-type-in-wordpress/">How to get latest posts of custom post type in WordPress</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.conicsolutions.net/wordpress/how-to-get-latest-posts-of-custom-post-type-in-wordpress/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Woocommerce: How to Add a Custom Text in Products Loop on Archive Pages</title>
		<link>https://www.conicsolutions.net/wordpress/woocommerce-how-to-add-a-custom-text-in-products-loop-on-archive-pages/</link>
					<comments>https://www.conicsolutions.net/wordpress/woocommerce-how-to-add-a-custom-text-in-products-loop-on-archive-pages/#respond</comments>
		
		<dc:creator><![CDATA[Conic Solutions]]></dc:creator>
		<pubDate>Sun, 20 Mar 2022 10:42:30 +0000</pubDate>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[woocommerce]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.conicsolutions.net/?p=818</guid>

					<description><![CDATA[<p>Sometimes, we want to have a possibility to put the special two-three word of each of our products and show them to our visitors so they can have a better picture of the product purpose. I had 100+ situations like this where clients want to show this simple sentence or a few words in their [&#8230;]</p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/woocommerce-how-to-add-a-custom-text-in-products-loop-on-archive-pages/">Woocommerce: How to Add a Custom Text in Products Loop on Archive Pages</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Sometimes, we want to have a possibility to put the special two-three word of each of our products and show them to our visitors so they can have a better picture of the product purpose.</p>



<p>I had 100+ situations like this where clients want to show this simple sentence or a few words in their archive pages so they can have a better engagement and set a clearer picture of the product&#8217;s purpose.</p>



<p>In order to have that special field for each of our products on the archive or category page, we have to create a special custom meta field for our products.</p>



<p>We can create that field custom, but in this case, I&#8217;m going to use a very popular plugin called <a href="https://wordpress.org/plugins/advanced-custom-fields/" target="_blank" rel="noreferrer noopener nofollow">ACF</a> (Advanced Custom Fields).</p>



<p>All we will need is available in the free version and plugins is very safe so you don&#8217;t have to worry about that.</p>



<p>1. Install ACF plugin</p>



<p>2. Create a new field group for your product post type and add a new field that you will use for this purpose.</p>



<p>If you are asking yourself how to do that please follow this 2 min tutorial: <a href="https://share.vidyard.com/watch/2o8Xm7cP24tWLdNLRPayxz?" rel="nofollow">https://share.vidyard.com/watch/2o8Xm7cP24tWLdNLRPayxz?</a></p>



<p>3. Open your product in the dashboard and type in that newly created field whatever you want to show 🙂 then, save/update the product.</p>



<p>4. In your function.php file, paste the code below:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
// Show highlighted text
function cs_show_highlighted_text() {
    global $product;
    $highlighted_text = get_field(&#039;highlighted_text&#039;, $product-&gt;get_id());

    if ( !empty($highlighted_text) ) {
        echo &#039;&lt;p class=&quot;highlighted-text&quot;&gt;&#039; . $highlighted_text . &#039;&lt;/p&gt;&#039;;
    }
}
add_action(&#039;woocommerce_after_shop_loop_item&#039;, &#039;cs_show_highlighted_text&#039;, 5);
</pre></div>


<p>Now, your custom text should be displayed like on the image below</p>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-large is-style-default"><img decoding="async" width="1024" height="731" src="https://www.conicsolutions.net/wp-content/uploads/2022/03/how-to-show-a-custom-text-on-product-archive-page-woocommerce-1024x731.png" alt="How to add a custom text on product archive page in woocommerce" class="wp-image-819" srcset="https://www.conicsolutions.net/wp-content/uploads/2022/03/how-to-show-a-custom-text-on-product-archive-page-woocommerce-1024x731.png 1024w, https://www.conicsolutions.net/wp-content/uploads/2022/03/how-to-show-a-custom-text-on-product-archive-page-woocommerce-300x214.png 300w, https://www.conicsolutions.net/wp-content/uploads/2022/03/how-to-show-a-custom-text-on-product-archive-page-woocommerce-768x548.png 768w, https://www.conicsolutions.net/wp-content/uploads/2022/03/how-to-show-a-custom-text-on-product-archive-page-woocommerce-1536x1097.png 1536w, https://www.conicsolutions.net/wp-content/uploads/2022/03/how-to-show-a-custom-text-on-product-archive-page-woocommerce-1080x771.png 1080w, https://www.conicsolutions.net/wp-content/uploads/2022/03/how-to-show-a-custom-text-on-product-archive-page-woocommerce.png 1630w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<div style="height:35px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Let me know if you have any questions or if you need help 🙂</p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/woocommerce-how-to-add-a-custom-text-in-products-loop-on-archive-pages/">Woocommerce: How to Add a Custom Text in Products Loop on Archive Pages</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.conicsolutions.net/wordpress/woocommerce-how-to-add-a-custom-text-in-products-loop-on-archive-pages/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Woocommerce: How To Make Billing Phone Field Optional</title>
		<link>https://www.conicsolutions.net/wordpress/woocommerce-how-to-make-billing-phone-field-optional/</link>
					<comments>https://www.conicsolutions.net/wordpress/woocommerce-how-to-make-billing-phone-field-optional/#respond</comments>
		
		<dc:creator><![CDATA[Conic Solutions]]></dc:creator>
		<pubDate>Sun, 20 Mar 2022 09:52:53 +0000</pubDate>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[woocommerce]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.conicsolutions.net/?p=815</guid>

					<description><![CDATA[<p>In order to make the billing phone number optional just use the code below and paste it inside your functions.php file. Feel free to ask for any questions you might have 🙂</p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/woocommerce-how-to-make-billing-phone-field-optional/">Woocommerce: How To Make Billing Phone Field Optional</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p></p>



<p>In order to make the billing phone number optional just use the code below and paste it inside your functions.php file.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
/**
 * Woocommerce: Billing phone optional
 */
function cs_woocommerce_billing_fields( $fields ) {
    $fields&#91;&#039;billing_phone&#039;]&#91;&#039;required&#039;] = false;
    return $fields;
}
add_filter( &#039;woocommerce_billing_fields&#039;, &#039;cs_woocommerce_billing_fields&#039;, 10, 1 );
</pre></div>


<p>Feel free to ask for any questions you might have 🙂 </p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/woocommerce-how-to-make-billing-phone-field-optional/">Woocommerce: How To Make Billing Phone Field Optional</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.conicsolutions.net/wordpress/woocommerce-how-to-make-billing-phone-field-optional/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Woocommerce: Get products list with custom shortcode</title>
		<link>https://www.conicsolutions.net/wordpress/woocommerce-get-products-list-with-custom-shortcode/</link>
					<comments>https://www.conicsolutions.net/wordpress/woocommerce-get-products-list-with-custom-shortcode/#respond</comments>
		
		<dc:creator><![CDATA[Conic Solutions]]></dc:creator>
		<pubDate>Sat, 19 Mar 2022 22:28:29 +0000</pubDate>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[woocommerce]]></category>
		<category><![CDATA[woocommerce custom]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.conicsolutions.net/?p=806</guid>

					<description><![CDATA[<p>Woocommerce by itself has a lot of shortcodes that we can use and can really help us with building our shop. But, sometimes we just need a simple list of products without all information, let&#8217;s say we want to show the title, price, and product image as a simple table view. Let&#8217;s imagine that we [&#8230;]</p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/woocommerce-get-products-list-with-custom-shortcode/">Woocommerce: Get products list with custom shortcode</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Woocommerce by itself has a lot of shortcodes that we can use and can really help us with building our shop.</p>



<p>But, sometimes we just need a simple list of products without all information, let&#8217;s say we want to show the title, price, and product image as a simple table view.</p>



<p>Let&#8217;s imagine that we also want to have a possibility for custom attributes in that shortcode as well as custom ordering (e.g. most sellable products).</p>



<p>After that, we can use that shortcode on pages, widgets, etc.</p>



<p>First, we will create a custom shortcode in our functions.php file:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
// Woocommerce get custom product list
function cs_get_product_list($atts) {
    $attributes = shortcode_atts( array(
        &#039;product_number&#039;    =&gt; &#039;-1&#039;,
        &#039;post_status&#039;       =&gt; &#039;publish&#039;,
        &#039;id&#039;                =&gt; &#039;false&#039;,
        &#039;title&#039;             =&gt; &#039;true&#039;,
        &#039;total_sales&#039;       =&gt; &#039;true&#039;,
        &#039;stock_status&#039;      =&gt; &#039;true&#039;,
        &#039;price&#039;             =&gt; &#039;true&#039;,
        &#039;default_style&#039;     =&gt; &#039;true&#039;
    ), $atts );

    ob_start();

    // Define arguments
    $args = &#91;
        &#039;post_type&#039; =&gt; &#039;product&#039;,
        &#039;posts_per_page&#039; =&gt; $attributes&#91;&#039;product_number&#039;],
        &#039;fields&#039; =&gt; &#039;ids&#039;,
        &#039;post_status&#039; =&gt; $attributes&#91;&#039;post_status&#039;],
    ];

    // Get all product IDS
    $products_ids = new WP_Query($args);

    // Save product info
    $products_config = &#91;];
    if ( ! empty( $products_ids-&gt;posts ) ) {
        foreach ( $products_ids-&gt;posts as $product_id ) {
            $product = new WC_Product($product_id); // Woocommerce product object

            // Prepare product array
            $prepare = &#91;
                &#039;id&#039;            =&gt; $product-&gt;get_id(),
                &#039;title&#039;         =&gt; $product-&gt;get_title(),
                &#039;total_sales&#039;   =&gt; $product-&gt;get_total_sales(),
                &#039;stock_status&#039;  =&gt; $product-&gt;get_stock_status(),
                &#039;price&#039;         =&gt; $product-&gt;get_price_html(),
            ];

            // Add prepared product to array
            $products_config&#91;] = $prepare;
        }
    }


    // html ouptut
    $output = &#039;&#039;;
    if ( ! empty( $products_config ) ) {
        if ( $attributes&#91;&#039;default_style&#039;] == &#039;true&#039; ) {
            $output .= &#039;
                &lt;style&gt;
                    ul.cs-product-list {
                        list-style-type: none;
                        margin-left: 0;
                        display: grid;
                        grid-template-columns: auto auto auto;
                        column-gap: 22px;
                        row-gap: 22px;
                    }
                    ul.cs-product-list li {
                       border: 1px solid #d1d1d1;
                       padding: 10px;
                       border-radius: 3px;
                    }
                &lt;/style&gt;
            &#039;;
        }
        
        $output .= &#039;&lt;ul class=&quot;cs-product-list&quot;&gt;&#039;;
        foreach ( $products_config as $product_info ) {

            $output .= &#039;&lt;li&gt;&#039;;
            
            if ( $attributes&#91;&#039;id&#039;] == &#039;true&#039; ) $output .= __(&#039;ID: &#039;) . $product_info&#91;&#039;id&#039;] . &#039;&lt;br&gt;&#039;;
            if ( $attributes&#91;&#039;title&#039;] == &#039;true&#039; ) $output .= __(&#039;Name: &#039;) . $product_info&#91;&#039;title&#039;] . &#039;&lt;br&gt;&#039;;
            if ( $attributes&#91;&#039;price&#039;] == &#039;true&#039; ) $output .= __(&#039;Price: &#039;) . $product_info&#91;&#039;price&#039;] . &#039;&lt;br&gt;&#039;;
            if ( $attributes&#91;&#039;total_sales&#039;] == &#039;true&#039; ) $output .= __(&#039;Total sales: &#039;) . $product_info&#91;&#039;total_sales&#039;] . &#039;&lt;br&gt;&#039;;
            if ( $attributes&#91;&#039;stock_status&#039;] == &#039;true&#039; ) $output .= __(&#039;Stock status:&#039;) . $product_info&#91;&#039;stock_status&#039;] . &#039;&lt;br&gt;&#039;;
            
            $output .= &#039;&lt;/li&gt;&#039;;
        }

        $output .= &#039;&lt;/ul&gt;&#039;;
    }

    echo $output;

    return ob_get_clean();
}
add_shortcode( &#039;cs_product_list&#039;, &#039;cs_get_product_list&#039; );
</pre></div>


<p>To call shortcode use this:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
&#91;cs_product_list]
</pre></div>


<p>But, this shortcode accepts arguments so below is the documentation:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
/**
 * Documentation
 * 
 * &#91;cs_product_list] -&gt; will show list of all products
 * &#91;cs_product_list product_number=&quot;-1&quot;] -&gt; Number of products you want to show - default: -1 (all)
 * &#91;cs_product_list post_status=&quot;publish|draft|any&quot;] -&gt; Choose post status - default:publish
 * &#91;cs_product_list id=&quot;true|false&quot;] -&gt; show ID or not - default:false
 * &#91;cs_product_list title=&quot;true|false&quot;] -&gt; show title or not - default:true
 * &#91;cs_product_list total_sales=&quot;true|false&quot;] -&gt; show total sales or not - default:true
 * &#91;cs_product_list stock_status=&quot;true|false&quot;] -&gt; show stock status or not - default:true
 * &#91;cs_product_list price=&quot;true|false&quot;] -&gt; show price or not - default:true
 * &#91;cs_product_list default_style=&quot;true|false&quot;] -&gt; use default style or not - default:true
 * 
 * We can combine:
 * &#91;cs_product_list product_number=&quot;6&quot; id=&quot;true&quot; title=&quot;true&quot; total_sales=&quot;false&quot; stock_status=&quot;true&quot; default_style=&quot;true&quot; price=&quot;true&quot;]
 * 
 */
</pre></div>


<p>Here is an example: <a href="https://work.co-nic.com/woocommerce-get-custom-product-list/" target="_blank" rel="noreferrer noopener">https://work.co-nic.com/woocommerce-get-custom-product-list/</a></p>



<p></p>



<p>If you have any questions feel free to ask 🙂</p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/woocommerce-get-products-list-with-custom-shortcode/">Woocommerce: Get products list with custom shortcode</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.conicsolutions.net/wordpress/woocommerce-get-products-list-with-custom-shortcode/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>How to create a WordPress image popup without plugin</title>
		<link>https://www.conicsolutions.net/wordpress/how-to-create-wordpress-image-popup-without-plugin/</link>
					<comments>https://www.conicsolutions.net/wordpress/how-to-create-wordpress-image-popup-without-plugin/#respond</comments>
		
		<dc:creator><![CDATA[Conic Solutions]]></dc:creator>
		<pubDate>Tue, 08 Mar 2022 22:45:42 +0000</pubDate>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.conicsolutions.net/?p=794</guid>

					<description><![CDATA[<p>You are probably faced with a situation where you had to add a simple popup and you find out that you have to use a plugin. Although we have very strong and powerful plugins that we can use for this purpose and I really don&#8217;t have anything against them in this short tutorial I want [&#8230;]</p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/how-to-create-wordpress-image-popup-without-plugin/">How to create a WordPress image popup without plugin</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>You are probably faced with a situation where you had to add a simple popup and you find out that you have to use a plugin. Although we have very strong and powerful plugins that we can use for this purpose and I really don&#8217;t have anything against them in this short tutorial I want to show you how you can create your own popup without any plugin.</p>



<p>You will end up with a simple solution and you will not hurt your web performance.</p>



<p>Let&#8217;s start 🙂</p>



<p></p>



<p>1. We need a popular popup jQuery library called Magnific popup</p>



<p>You can download it from here&nbsp;<a href="https://github.com/dimsemenov/Magnific-Popup" target="_blank" rel="noreferrer noopener">Magnific Popup</a>&nbsp;and extract it.</p>



<p></p>



<p>2. Using FTP manager (FileZilla) open your theme folder (child theme) and upload the Magnific Popup library (I prefer to create an&nbsp;<strong>assets</strong>&nbsp;folder in your theme so you have everything well organized, and upload Magnific Popup library there).</p>



<p></p>



<p>3. We need a JS file where we will write our small script. So, for that purpose, we will create a new file in your theme folder&nbsp;and name it: custom-popup.js.</p>



<p>(I prefer to create it and save it in the assets/js folder because of better file organization).</p>



<p></p>



<p>4. We need to call the Magnific Popup library and the newly created file from the previous step.</p>



<p>To do so, please open your functions.php file from your theme and paste this code:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
// Custom popup
function cs_custom_popup_call() {

    // Magnific Popup
    wp_enqueue_style( &#039;magnific-popup-css&#039;, get_stylesheet_directory_uri() . &#039;/assets/magnific/magnific-popup.css&#039; );
    wp_enqueue_script(&#039;magnific-js&#039;, get_stylesheet_directory_uri() . &#039;/assets/magnific/jquery.magnific-popup.js&#039;, array(&quot;jquery&quot;), false );
    wp_enqueue_script(&#039;magnific-js-2&#039;, get_stylesheet_directory_uri() . &#039;/assets/magnific/jquery.magnific-popup.min.js&#039;, array(&quot;jquery&quot;), false );

    // Custom JS file 
    wp_enqueue_script(&#039;custom-popup&#039;, get_stylesheet_directory_uri() . &#039;/assets/js/custom-popup.js&#039;, array(&quot;jquery&quot;) );

}
add_action( &#039;wp_enqueue_scripts&#039;, &#039;cs_custom_popup_call&#039; );
</pre></div>


<p>5. In a newly created JS file (from step 3) put this code:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: jscript; title: ; notranslate">
jQuery(document).ready(function($) {

    $(&quot;.image-popup&quot;).magnificPopup({
        delegate: &#039;a&#039;,
        type: &#039;image&#039;,        
        closeOnContentClick: true,
        closeBtnInside: false,
        mainClass: &#039;mfp-no-margins mfp-with-zoom&#039;,
        zoom: {
            enabled: true,
            duration: 200
        }
    });

});
</pre></div>


<h4 class="wp-block-heading">How to use this?</h4>



<p>You just need to use a defined class (in my case it is image-popup) in your link (a tag)</p>



<p>E.g.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: xml; title: ; notranslate">
&lt;div class=&quot;image-popup&quot;&gt;
    &lt;a href=&quot;https://www.conicsolutions.net/wp-content/uploads/2021/11/Web-Development-and-Maintenance.png&quot;&gt;
        &lt;img width=&quot;350&quot; src=&quot;https://www.conicsolutions.net/wp-content/uploads/2021/11/Web-Development-and-Maintenance.png&quot;&gt;
    &lt;/a&gt;
&lt;/div&gt;
</pre></div>


<p>Below is my example:</p>



<div class="image-popup"><a href="https://www.conicsolutions.net/wp-content/uploads/2021/11/Web-Development-and-Maintenance.png">
    <img decoding="async" width="400" src="https://www.conicsolutions.net/wp-content/uploads/2021/11/Web-Development-and-Maintenance.png">
</a></div>



<p></p>



<p>If you have any questions, issues, improvements, please feel free to ask in the comments 🙂 </p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/how-to-create-wordpress-image-popup-without-plugin/">How to create a WordPress image popup without plugin</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.conicsolutions.net/wordpress/how-to-create-wordpress-image-popup-without-plugin/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Woocommerce: How to add a custom filter on the products list in the dashboard</title>
		<link>https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-a-custom-filter-on-the-products-list-in-the-dashboard/</link>
					<comments>https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-a-custom-filter-on-the-products-list-in-the-dashboard/#respond</comments>
		
		<dc:creator><![CDATA[Conic Solutions]]></dc:creator>
		<pubDate>Mon, 07 Mar 2022 08:07:48 +0000</pubDate>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[woocommerce]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.conicsolutions.net/?p=771</guid>

					<description><![CDATA[<p>Let&#8217;s say we want to have new criteria to filter our products than the default In my example, I&#8217;ll use the custom field from one of my previous posts &#8220;Season&#8221; (https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-custom-columns-on-the-products-list-in-dashboard/) and I want to have the possibility to filter my products by Season. Let&#8217;s start 🙂 1. Using FTP manager (FileZilla), open your theme [&#8230;]</p>
<p>The post <a href="https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-a-custom-filter-on-the-products-list-in-the-dashboard/">Woocommerce: How to add a custom filter on the products list in the dashboard</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Let&#8217;s say we want to have new criteria to filter our products than the default</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1820" height="172" src="https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-product-filters-dashboard.png" alt="How to add a custom filter on product list in dashboard" class="wp-image-772" srcset="https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-product-filters-dashboard.png 1820w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-product-filters-dashboard-300x28.png 300w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-product-filters-dashboard-1024x97.png 1024w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-product-filters-dashboard-768x73.png 768w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-product-filters-dashboard-1536x145.png 1536w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-product-filters-dashboard-1080x102.png 1080w" sizes="auto, (max-width: 1820px) 100vw, 1820px" /></figure>



<p>In my example, I&#8217;ll use the custom field from one of my previous posts &#8220;Season&#8221; (<a href="https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-custom-columns-on-the-products-list-in-dashboard/">https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-custom-columns-on-the-products-list-in-dashboard/</a>) and I want to have the possibility to filter my products by Season.</p>



<p>Let&#8217;s start 🙂</p>



<p>1. Using FTP manager (FileZilla), open your theme folder (child theme) and open file functions.php.</p>



<p>2. Put this code below and don&#8217;t forget to replace it with your own data you want to show.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
// Filter render
function cs_get_filter_options() {
    $options = &#91;
        &#91;
            &#039;name&#039; =&gt; &#039;Filter by Seasons&#039;,
            &#039;value&#039; =&gt; &#039;&#039;,
            &#039;selected&#039; =&gt; (!isset($_GET&#91;&#039;season&#039;]) || empty($_GET&#91;&#039;season&#039;])) ? &#039;selected&#039; : &#039;&#039;,
        ],
        &#91;
            &#039;name&#039; =&gt; &#039;Spring&#039;,
            &#039;value&#039; =&gt; &#039;spring&#039;,
            &#039;selected&#039; =&gt; (isset($_GET&#91;&#039;season&#039;]) &amp;&amp; $_GET&#91;&#039;season&#039;] == &#039;spring&#039;) ? &#039;selected=&quot;selected&quot;&#039; : &#039;&#039;,
        ],
        &#91;
            &#039;name&#039; =&gt; &#039;Summer&#039;,
            &#039;value&#039; =&gt; &#039;summer&#039;,
            &#039;selected&#039; =&gt; (isset($_GET&#91;&#039;season&#039;]) &amp;&amp; $_GET&#91;&#039;season&#039;] == &#039;summer&#039;) ? &#039;selected=&quot;selected&quot;&#039; : &#039;&#039;,
        ],
        &#91;
            &#039;name&#039; =&gt; &#039;Autumn&#039;,
            &#039;value&#039; =&gt; &#039;autumn&#039;,
            &#039;selected&#039; =&gt; (isset($_GET&#91;&#039;season&#039;]) &amp;&amp; $_GET&#91;&#039;season&#039;] == &#039;autumn&#039;) ? &#039;selected=&quot;selected&quot;&#039; : &#039;&#039;,
        ],
        &#91;
            &#039;name&#039; =&gt; &#039;Winter&#039;,
            &#039;value&#039; =&gt; &#039;winter&#039;,
            &#039;selected&#039; =&gt; (isset($_GET&#91;&#039;season&#039;]) &amp;&amp; $_GET&#91;&#039;season&#039;] == &#039;winter&#039;) ? &#039;selected=&quot;selected&quot;&#039; : &#039;&#039;,
        ]
    ];

    // html
    $output = &#039;&#039;;
    foreach ( $options as $option ) {
        $output .= &#039;&lt;option value=&quot;&#039;.$option&#91;&#039;value&#039;].&#039;&quot; &#039;.$option&#91;&#039;selected&#039;].&#039;&gt;&#039; . $option&#91;&#039;name&#039;] . &#039;&lt;/option&gt;&#039;;
    }

    return $output;
}

// Define function to set your filter
function cs_custom_filter( $output ) {
    global $wp_query;
    $output .= &#039;&lt;select class=&quot;season-filter dropdown_product_cat&quot; name=&quot;season&quot;&gt;&#039;. cs_get_filter_options() .&#039;&lt;/select&gt;&#039;;

    return $output;
}
add_filter( &#039;woocommerce_product_filters&#039;, &#039;cs_custom_filter&#039; );

// Set up the query
function cs_products_filter_query($query) {
    if ( is_admin() ) {
        if ( isset($_GET&#91;&#039;season&#039;]) &amp;&amp; !empty($_GET&#91;&#039;season&#039;]) ) {

            $meta_query = (array)$query-&gt;get(&#039;meta_query&#039;);
            $meta_query&#91;] = &#91;
                &#039;key&#039;     =&gt; &#039;season&#039;, // replace with your own meta key
                &#039;value&#039;   =&gt; wc_clean( wp_unslash($_GET&#91;&#039;season&#039;])),
                &#039;compare&#039; =&gt; &#039;=&#039;,
            ];

            $query-&gt;set(&#039;meta_query&#039;, $meta_query);
        }
    }
}
add_action(&#039;pre_get_posts&#039;, &#039;cs_products_filter_query&#039;);

</pre></div>


<p>Now you should be able to filter your product by the custom filter you created.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="179" src="https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-data-1024x179.png" alt="Woocommerce - filter products by custom meta data" class="wp-image-775" srcset="https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-data-1024x179.png 1024w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-data-300x52.png 300w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-data-768x134.png 768w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-data-1536x269.png 1536w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-data-2048x358.png 2048w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-data-1080x189.png 1080w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<p></p>



<p>When you filter it, you should get the list of the products of that meta key.</p>



<p>In my case it looks like the image below:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="200" src="https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-meta-data-final-1024x200.png" alt="" class="wp-image-776" srcset="https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-meta-data-final-1024x200.png 1024w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-meta-data-final-300x59.png 300w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-meta-data-final-768x150.png 768w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-meta-data-final-1536x300.png 1536w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-meta-data-final-2048x400.png 2048w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-filter-product-by-custom-meta-data-final-1080x211.png 1080w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<p>If you have any questions or need help, feel free to ask in the comments 🙂 </p>
<p>The post <a href="https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-a-custom-filter-on-the-products-list-in-the-dashboard/">Woocommerce: How to add a custom filter on the products list in the dashboard</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-a-custom-filter-on-the-products-list-in-the-dashboard/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Divi: How to open blurb module image in lightbox?</title>
		<link>https://www.conicsolutions.net/tutorials/divi-how-to-open-blurb-module-image-in-lightbox/</link>
					<comments>https://www.conicsolutions.net/tutorials/divi-how-to-open-blurb-module-image-in-lightbox/#comments</comments>
		
		<dc:creator><![CDATA[Conic Solutions]]></dc:creator>
		<pubDate>Sun, 06 Mar 2022 22:02:19 +0000</pubDate>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[divi]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.conicsolutions.net/?p=761</guid>

					<description><![CDATA[<p>Last time, when I worked on the Divi project I had a situation where I needed the blurb module image to be clickable and open in the lightbox. I was researching and couldn&#8217;t find the proper plugin or the additional code that could easily resolve this issue so I end up creating a solution and [&#8230;]</p>
<p>The post <a href="https://www.conicsolutions.net/tutorials/divi-how-to-open-blurb-module-image-in-lightbox/">Divi: How to open blurb module image in lightbox?</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Last time, when I worked on the Divi project I had a situation where I needed the blurb module image to be clickable and open in the lightbox.</p>



<p>I was researching and couldn&#8217;t find the proper plugin or the additional code that could easily resolve this issue so I end up creating a solution and share with you 🙂 </p>



<p>What you need for this:</p>



<ol class="wp-block-list"><li><a href="https://github.com/dimsemenov/Magnific-Popup" target="_blank" rel="noreferrer noopener nofollow">Magnific Popup library</a> </li><li>Custom JS file called: <strong>divi-blurb-image-popup.js</strong></li></ol>



<p></p>



<p>Let&#8217;s start 🙂 </p>



<p>1. Download <a href="https://github.com/dimsemenov/Magnific-Popup" target="_blank" rel="noreferrer noopener nofollow">Magnific Popup</a> from the repository and extract it.</p>



<p>2. Using FTP manager (FileZilla) open your theme folder (child theme) and upload the Magnific Popup library (I prefer to create an <strong>assets</strong> folder in your theme so you have everything well organized, and upload Magnific Popup library there).</p>



<p>3. On your theme folder create a new file <strong>divi-blurb-image-popup.js</strong> (I prefer to create it and save it in assets/js folder because of better file organization).</p>



<p>4. Open the file <strong>divi-blurb-image-popup.js</strong> and paste this code:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: jscript; title: ; notranslate">
jQuery(document).ready(function($){

    if ( $(&#039;.et_pb_blurb&#039;).length &gt; 0 ) {
        $(&quot;.et_pb_blurb&quot;).each(function(i, e){
            var img_src = $(this).find(&quot;.et_pb_image_wrap&quot;).children(&quot;img&quot;).attr(&quot;src&quot;);
            var img = $(this).find(&quot;.et_pb_image_wrap&quot;).html();
            var new_elem = $(&#039;&lt;a href=&quot;&#039;+img_src+&#039;&quot;&gt;&#039;+img+&#039;&lt;/a&gt;&#039;);

            $(this).find(&quot;.et_pb_image_wrap&quot;).html(new_elem);
        });

        $(&quot;.et_pb_blurb .et_pb_main_blurb_image .et_pb_image_wrap&quot;).magnificPopup({
            delegate: &#039;a&#039;,
            type: &#039;image&#039;,        
            closeOnContentClick: true,
            closeBtnInside: false,
            mainClass: &#039;mfp-no-margins mfp-with-zoom&#039;,
            gallery:{
              enabled:false
            },
            zoom: {
                enabled: true,
                duration: 200
            }
        });
    }
    
});
</pre></div>


<p>5. Save it and upload it to your theme folder (assets/js/<strong>divi-blurb-image-popup.js</strong>).</p>



<p>Now it&#8217;s time to call <strong>Magnific Popup</strong> library and <strong>divi-blurb-image-popup.js</strong> file</p>



<p>6. Open your file functions.php and paste this code:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
function cs_magnific_scripts() {
    // Call Magnific Popup
    wp_enqueue_style( &#039;magnific-popup-css&#039;, get_stylesheet_directory_uri() . &#039;/assets/magnific/magnific-popup.css&#039; );
    wp_enqueue_script(&#039;magnific-js&#039;, get_stylesheet_directory_uri() . &#039;/assets/magnific/jquery.magnific-popup.js&#039;, array(&quot;jquery&quot;) );
    wp_enqueue_script(&#039;magnific-js-2&#039;, get_stylesheet_directory_uri() . &#039;/assets/magnific/jquery.magnific-popup.min.js&#039;, array(&quot;jquery&quot;));

    // Call divi-blurb-image-popup.js file
    wp_enqueue_script(&#039;divi-blurb-image-popup&#039;, get_stylesheet_directory_uri() . &#039;/assets/js/divi-blurb-image-popup.js&#039;, array(&quot;jquery&quot;) );
}
add_action( &#039;wp_enqueue_scripts&#039;, &#039;cs_magnific_scripts&#039; );
</pre></div>


<p>Please note that you have to replace the path from the code above with your real path.</p>



<p>e.g. <strong><em>get_stylesheet_directory_uri() . &#8216;/assets/magnific/magnific-popup.css&#8217;</em></strong> instead of this you will use your path where you saved Magnific Popup library on your theme. In my case, I choose to save it in the assets folder.</p>



<p>That&#8217;s it 🙂</p>



<p>If you have any questions, feel free to ask in the comments.</p>
<p>The post <a href="https://www.conicsolutions.net/tutorials/divi-how-to-open-blurb-module-image-in-lightbox/">Divi: How to open blurb module image in lightbox?</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.conicsolutions.net/tutorials/divi-how-to-open-blurb-module-image-in-lightbox/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Woocommerce: How to add custom columns on the products list in dashboard</title>
		<link>https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-custom-columns-on-the-products-list-in-dashboard/</link>
					<comments>https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-custom-columns-on-the-products-list-in-dashboard/#respond</comments>
		
		<dc:creator><![CDATA[Conic Solutions]]></dc:creator>
		<pubDate>Sun, 06 Mar 2022 12:45:42 +0000</pubDate>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[woocommerce]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.conicsolutions.net/?p=751</guid>

					<description><![CDATA[<p>Sometimes you want to add an additional column to your dashboard so you can have a better overview and more information on your products list. 1. Using FTP manager (filezila), open your theme folder (child theme) and open file functions.php. If you are not familiar with FTP you can install the WP File Manager plugin [&#8230;]</p>
<p>The post <a href="https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-custom-columns-on-the-products-list-in-dashboard/">Woocommerce: How to add custom columns on the products list in dashboard</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Sometimes you want to add an additional column to your dashboard so you can have a better overview and more information on your products list.</p>



<p>1. Using FTP manager (filezila), open your theme folder (child theme) and open file functions.php.</p>



<p>If you are not familiar with FTP you can install the <strong>WP File Manager</strong> plugin for WordPress and use it as well.</p>



<p>In my example, I&#8217;m going to define a new column <strong>Season</strong> that will show me what seasons are products.</p>



<p>In order to do that I used a new custom field that I created with <a href="https://wordpress.org/plugins/advanced-custom-fields/" target="_blank" rel="noreferrer noopener sponsored nofollow">ACF</a> plugin</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="620" height="288" src="https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-acf-field.png" alt="" class="wp-image-752" srcset="https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-acf-field.png 620w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-acf-field-300x139.png 300w" sizes="auto, (max-width: 620px) 100vw, 620px" /></figure>



<p>2. Now we are going to put some code on your functions.php file.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
// Define new columns
function cs_set_custom_columns($columns) {
    $columns&#91;&#039;product_season&#039;] = __(&#039;Season&#039;, &#039;cs-text&#039;); // Instewad of Season use your own value you want to show as a column title
 
    return $columns;
}
add_filter( &#039;manage_product_posts_columns&#039;, &#039;cs_set_custom_columns&#039;);
 
// Show custom field in a new column
function cs_custom_column( $column, $post_id ) {
 
    switch ( $column ) {
        case &#039;product_season&#039; : // This has to match to the defined column in function above
            $get_season = get_field(&#039;season&#039;, $post_id);
            echo $get_season;
            break;
    }
     
}
add_action( &#039;manage_product_posts_custom_column&#039; , &#039;cs_custom_column&#039;, 10, 2 );
</pre></div>


<p>In the end, your product list should looks like this:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="102" src="https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-new-custom-column-with-a-custom-field-1024x102.png" alt="" class="wp-image-757" srcset="https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-new-custom-column-with-a-custom-field-1024x102.png 1024w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-new-custom-column-with-a-custom-field-300x30.png 300w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-new-custom-column-with-a-custom-field-768x76.png 768w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-new-custom-column-with-a-custom-field-1536x153.png 1536w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-new-custom-column-with-a-custom-field-2048x203.png 2048w, https://www.conicsolutions.net/wp-content/uploads/2022/03/woocommerce-new-custom-column-with-a-custom-field-1080x107.png 1080w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<p>If you have any question feel free to ask in the comments.</p>
<p>The post <a href="https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-custom-columns-on-the-products-list-in-dashboard/">Woocommerce: How to add custom columns on the products list in dashboard</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.conicsolutions.net/tutorials/woocommerce-how-to-add-custom-columns-on-the-products-list-in-dashboard/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Woocommerce: How to get orders by product ID</title>
		<link>https://www.conicsolutions.net/tutorials/woocommerce-how-to-get-orders-by-product-id/</link>
					<comments>https://www.conicsolutions.net/tutorials/woocommerce-how-to-get-orders-by-product-id/#respond</comments>
		
		<dc:creator><![CDATA[Conic Solutions]]></dc:creator>
		<pubDate>Sat, 05 Mar 2022 10:03:16 +0000</pubDate>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[woocommerce]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.conicsolutions.net/?p=731</guid>

					<description><![CDATA[<p>Hi everyone, in this tutorial, we’re going to explain how to get orders ID from woocommerce by product ID. 1. Open your theme (child theme preferred) folder and open file functions.php. 2. Paste this code: This function will give as all woocommerce orders IDS from a specific product. Output: Where we can use this? Let&#8217;s [&#8230;]</p>
<p>The post <a href="https://www.conicsolutions.net/tutorials/woocommerce-how-to-get-orders-by-product-id/">Woocommerce: How to get orders by product ID</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p></p>



<p>Hi everyone, </p>



<p>in this tutorial, we’re going to explain how to get orders ID from woocommerce by product ID.</p>



<p>1. Open your theme (child theme preferred) folder and open file functions.php.</p>



<p>2. Paste this code:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
function get_orders_ids_by_product_id($product_id) {

    global $wpdb;
    $order_status = &#91;&#039;wc-completed&#039;, &#039;wc-processing&#039;, &#039;wc-on-hold&#039;];
    
    $results = $wpdb-&gt;get_col(&quot;
        SELECT order_items.order_id
        FROM {$wpdb-&gt;prefix}woocommerce_order_items as order_items
        LEFT JOIN {$wpdb-&gt;prefix}woocommerce_order_itemmeta as order_item_meta ON order_items.order_item_id = order_item_meta.order_item_id
        LEFT JOIN {$wpdb-&gt;posts} AS posts ON order_items.order_id = posts.ID
        WHERE posts.post_type = &#039;shop_order&#039;
        AND posts.post_status IN ( &#039;&quot; . implode( &quot;&#039;,&#039;&quot;, $order_status ) . &quot;&#039; )
        AND order_items.order_item_type = &#039;line_item&#039;
        AND order_item_meta.meta_key = &#039;_product_id&#039; 
        AND order_item_meta.meta_value = &#039;&quot;.$product_id.&quot;&#039; 
        ORDER BY order_items.order_id DESC&quot;);

    return $results;
}
</pre></div>


<p>This function will give as all woocommerce orders IDS from a specific product.</p>



<p>Output:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
array(
   2321,
   2322,
   2323,
   2324
)
</pre></div>


<h4 class="wp-block-heading">Where we can use this?</h4>



<p>Let&#8217;s say we want to have a list of all orders from a specific product, we easily can go through all products and get all orders. </p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
$orders_ids = get_orders_ids_by_product_id(1003) // NOTE: Please replace product ID with a real product ID 

// now when we have all orders ids we can do somethin like bellow:

if ( !empty( $orders_ids ) ) {
    foreach ( $orders_ids as $order_id ) {
        // get order by order ID
        $order = wc_get_order($order_id);

        // do what do you want
    }
}
</pre></div><p>The post <a href="https://www.conicsolutions.net/tutorials/woocommerce-how-to-get-orders-by-product-id/">Woocommerce: How to get orders by product ID</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.conicsolutions.net/tutorials/woocommerce-how-to-get-orders-by-product-id/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Does WordPress Multisite (Network) Hurt Your SEO?</title>
		<link>https://www.conicsolutions.net/wordpress/does-wordpress-multisite-network-hurt-your-seo/</link>
					<comments>https://www.conicsolutions.net/wordpress/does-wordpress-multisite-network-hurt-your-seo/#respond</comments>
		
		<dc:creator><![CDATA[Conic Solutions]]></dc:creator>
		<pubDate>Thu, 20 Jan 2022 08:53:46 +0000</pubDate>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[multisite]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress multisite]]></category>
		<category><![CDATA[Wordpress Multisite SEO]]></category>
		<guid isPermaLink="false">https://www.conicsolutions.net/?p=718</guid>

					<description><![CDATA[<p>The post <a href="https://www.conicsolutions.net/wordpress/does-wordpress-multisite-network-hurt-your-seo/">Does WordPress Multisite (Network) Hurt Your SEO?</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><div class="et_pb_section et_pb_section_0 et_section_regular" >
				
				
				
				
				
				
				<div class="et_pb_row et_pb_row_0">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_0  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_0  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><p><span style="font-weight: 400;">WordPress is well known for being an SEO-friendly and multisite platform, and it is also one good option for managing your multiple sites from a single dashboard. As we will talk about </span><span style="font-weight: 400;">WordPress multisite</span><span style="font-weight: 400;">, let us go through the definition of multisite. We will also go through </span><span style="font-weight: 400;">WordPress multisite SEO</span><span style="font-weight: 400;"> and its effect. </span></p>
<h2><b>What Is Multisite?</b></h2>
<p><span style="font-weight: 400;">The original vision that was linked to </span><span style="font-weight: 400;">WordPress multisite</span><span style="font-weight: 400;"> was enabling blogging networks. Still, today people are trying to utilize it as the utility for managing multiple sites using one installation of WordPress. </span></p>
<p><span style="font-weight: 400;">Hence it is very important to understand that people are trying enough to make multisite do things it wasn&#8217;t designed to do. Having multisite, there is one single host, one install of WordPress, and many sites. </span></p>
<p><span style="font-weight: 400;">Think of it as a way that multisite is an apartment complex, and there is only a single shared roof, common spaces, and several private apartments. </span><span style="font-weight: 400;"></span><b></b></p>
<p><span style="font-weight: 400;">More about wordpress multisite you can find here: <a href="https://www.wpbeginner.com/glossary/multisite/" target="_blank" rel="noopener">WordPress Multisite</a></span></p>
<h2><b>So, You Might Also Be In Confusion About What Doesn&#8217;t Fall Under Multisite?</b></h2>
<p><span style="font-weight: 400;">Now that you also know what multisite is, here are a few things that aren&#8217;t multisite:</span></p>
<ul>
<li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">A network of different sites that can be moved to some separate hosts </span></li>
<li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">A set of sites that may be easily separated into their very own WordPress installs </span></li>
<li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">A set of sites that may have different IP addresses.</span></li>
</ul>
<h2><b></b></h2>
<h2><b>Does WordPress Multisite Affect SEO Ranking?</b></h2>
<p><span style="font-weight: 400;">WordPress multisite isn&#8217;t thought to be good for SEO in such a way that it won&#8217;t make a website rank better when compared to the ones that are without multisite. On the opposite, if it is not set up in the right way, it may also adversely affect your ranking. Many different options of setting up your multisite are using either your subdirectory or a subdomain. </span></p>
<p><span style="font-weight: 400;">WordPress is an SEO-friendly platform, and the multisite platform is one option for managing different sites from a single dashboard. But you are faced with some bigger issues regarding SEO when it is the case of multiple websites. First and foremost, you should think about the SEO strategy that you are following:</span></p>
<ul>
<li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">Is the content of the top-level domain related to the content of your master site, or is it different?</span></li>
<li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">Do you wish to rank every TLD independently?</span></li>
</ul>
<p><span style="font-weight: 400;">Once you have this clear SEO strategy set, you can move on to the evaluation that will work best for many different sites. One main advantage that </span><span style="font-weight: 400;">WordPress multisite SEO</span><span style="font-weight: 400;"> offers is that you can apply a theme to all sites. </span></p>
<h2><b></b></h2>
<h2><b>What Are The Dos And Don&#8217;ts Of WordPress Multisite SEO?</b></h2>
<p><span style="font-weight: 400;">Having all of that in mind, here are a few tips that you can use on what you must and must not do with your </span><span style="font-weight: 400;">WordPress multisite.</span><span style="font-weight: 400;"> </span><b></b></p>
<h5><b></b></h5>
<h5><b>1. Don&#8217;t Put All Of The Sites Which You Don&#8217;t Trust In A Public Multisite Network:</b></h5>
<p><span style="font-weight: 400;">Picking a public network has huge baggage which goes with it. Putting the multisite on a public network also means that anyone may come and sign up for the website in your network. </span></p>
<p><span style="font-weight: 400;">By default, if anyone can sign up, anybody can upload any media to your network. Concerns along this may include anyone being able to send content, embeds, and all scripts under your domain that may be risky in terms of your copyrights. </span></p>
<h5><b></b></h5>
<h5><b>2. Don&#8217;t Over Modify A Theme Before You Use The Child Themes Plugin On Your Multisite:</b></h5>
<p><span style="font-weight: 400;">The One-Click Child Theme is a single click button that allows you to create a child theme for parent themes for all single subsite over the multisite network. This allows you to customers the SVV in any theme of a particular site without actually modifying the parent theme and affecting all multisite on your network. </span></p>
<h5><b></b></h5>
<h5><b>3. Do Think Of A Private Or Trusted Network:</b></h5>
<p><span style="font-weight: 400;">Having your multisite over a private network also means that you should grant people the ability to do things such s alter themes and plugins. For example, WordCamp.org is a private multisite network where different trusted members can create a Word Camp site in any central location. </span></p>
<h5><b></b></h5>
<h5><b>4. Do Use Multisite For University Networks:</b></h5>
<p><span style="font-weight: 400;">Establishing a series of different collegiate sites into a single multisite network lets the university have its main flagship property and also then give every department, college, and school inside this university have its custom website, which keeps everything together in a perfect package over a private network</span><span style="font-weight: 400;"> </span></p>
<h5><b></b></h5>
<h5><b>5. Do Be Aware That You May End Up With Plugin Settings In Different Places:</b></h5>
<p><span style="font-weight: 400;">For example, the Yoast plugin has multisite settings in different places. There are different network plugin settings in the Network Admin and the site-specific settings in the normal WP admin for every site. </span></p>
<h5><b></b></h5>
<h5><b>6. Do Understand That Changes In One Theme Will Affect All Of The Sites Which Are Using This Theme:</b></h5>
<p><span style="font-weight: 400;"> For example, if you can change a template file and break a theme, then all of those sites using this theme will be broken. There is a way around this: being a super admin, you may network enable specific themes to some specific sites so that all of them are not affected if the change is made. This network enabling will let you restrict themes available to subsites. </span></p>
<h5><b></b></h5>
<h5><b>7. Do be aware that the WP content will also have some extra folders which are not there normally:</b></h5>
<p><span style="font-weight: 400;">The plugins and the themes folders will look the same, but the uploads folder won&#8217;t. The second you start adding many sites to your subsite, you will have the sites folder, which also has subfolders with numbers in them, the blog ID. </span></p>
<h2><b></b></h2>
<h2><b>Conclusion:</b></h2>
<p><span style="font-weight: 400;">These are a few things you can do to protect your </span><span style="font-weight: 400;">WordPress multisite SEO</span><span style="font-weight: 400;">. These options will carry you longer and help you succeed in your multisite. </span><span style="font-weight: 400;">WordPress SEO</span><span style="font-weight: 400;"> is something that you should always be worried about as it will help you grow or can carry you down the drain on the online world. </span></p>
<p><span style="font-weight: 400;">When you correctly use WordPress, multisite is ideal for managing all of your large network of sites over a single install. It helps you maintain your control while also allowing your end-users to launch their sites. </span></p>
<p><span style="font-weight: 400;">Keeping all of these dos and dont&#8217;s in the site will help you navigate the complicated WordPress multisite world. </span></p></div>
			</div>
			</div>
				
				
				
				
			</div><div class="et_pb_row et_pb_row_1">
				<div class="et_pb_column et_pb_column_4_4 et_pb_column_1  et_pb_css_mix_blend_mode_passthrough et-last-child">
				
				
				
				
				<div class="et_pb_module et_pb_text et_pb_text_1  et_pb_text_align_left et_pb_bg_layout_light">
				
				
				
				
				<div class="et_pb_text_inner"><h2>Do you need help with your WordPress Multisite?</h2>
<p>Be free to ask us any questions you may have regarding WordPress multisite, or WordPress multisite SEO.</p></div>
			</div><div class="et_pb_button_module_wrapper et_pb_button_0_wrapper  et_pb_module ">
				<a class="et_pb_button et_pb_button_0 et_pb_bg_layout_light" href="https://www.conicsolutions.net/contact-us/">Contact us</a>
			</div>
			</div>
				
				
				
				
			</div>
				
				
			</div></p>
<p>The post <a href="https://www.conicsolutions.net/wordpress/does-wordpress-multisite-network-hurt-your-seo/">Does WordPress Multisite (Network) Hurt Your SEO?</a> appeared first on <a href="https://www.conicsolutions.net">Wordpress Support &amp; Development</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.conicsolutions.net/wordpress/does-wordpress-multisite-network-hurt-your-seo/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
