How to check if a shortcode is being executed in a widget or post

I am creating a feature for my website using a WordPress shortcode. The shortcode is displays an HTML table that contains certain data.

I have enabled the short code for widget/sidebar and it is working fine in the widget.

The only problem is that my designer has created two different styles; one for post and another for widget. Is there any way to know that the code is being executed in sidebar or in post?

eg:

if(is_widget()){
//add stylesheet for widget here
}
else{
//add stylesheet for post here
}

Thank you

1 Answer
1

Using conditional tag in_the_loop inside your shortcode function may serve the purpose.

if( in_the_loop() ) {
    //add stylesheet for post/page here...
} else {
    //add stylesheet for widget here...
}

Leave a Comment