Skip to content

Trigger wp scss to compile based on URL trigger (webhook) #48

Closed

Description

@philcook

Hi,

I have a quick question, we have a deployment system that updates the scss files on our server. We have noticed that doing this sometimes the CSS is not generated therefore want to be able to trigger this plugin to run post deployment.

The easiest thing I can see to do is for our deployment system to hit a URL that then triggers the plugin but I am unsure how to achieve this. Any guidance you could give would be ace!

Thanks.

Activity

  1. tomandersen commented on Jun 23, 2016

    @tomandersen

    Agreed - it would be nice to be able to do this. I wonder if changing the 'Compiling mode' will do it.

  2. ReessKennedy commented on Jan 6, 2017

    @ReessKennedy

    +1 on this. I am going to try to code a solution like this tonight ... I want to keep the plugin inactive at all times and then just be able to manually click on a link or button to recompile the CSS after an update to the SCSS is made.

  3. ReessKennedy commented on Jan 7, 2017

    @ReessKennedy

    Okay. What I decided to do is just wrap all the code in "wp-scss.php" in a URL activated conditional.

    Specifically, if ($_GET['compress'] == 'scss') { all code here }

    This way you can just leave the plugin activated on your live site all the time but it won't load any of the SCSS plugin code unnecessarily for all your visitors. Then when you make some changes and want to view them you can just visit your homepage and append mysite.com/?compress=scss and it will activate the code and compile it.

    It's a hack. And I did have to modify the plugin but it works and solved my issue.

  4. brrn commented on Jan 9, 2017

    @brrn
    Collaborator

    Hey @ReessKennedy, thanks for the feedback. I like the idea of creating a URL that can trigger the compile, like a webhook. That would especially come in handy if we added an option to only compile scss manually (along with adding a compile button to the dashboard).

    Would anyone else be interested in this?

  5. benhuson commented on Jan 9, 2017

    @benhuson

    @brrn Yep, it would be handy so it could be triggered like a webhook. Some deploy tools allow you to trigger a URL after deploying code if your hosting only supports FTP (not SSH) so being able to recompile the SCSS after a deploy would be useful.

  6. dmbostan commented on Jan 10, 2017

    @dmbostan

    @brrn hell, yeah! Any ETA on this ?

  7. dmbostan commented on Jan 11, 2017

    @dmbostan

    @ReessKennedy can you share the code if possible? I don't quite get it.

  8. ReessKennedy commented on Feb 2, 2017

    @ReessKennedy

    @dmbostan Sorry for the delay man. If you haven't figured it out, you can just open up the wp-scss.php file and then just wrap all the code with this

    `if ($_GET['compress'] == 'scss') {

    Plugin code goes here ... .

    }`

    Then whenever you want to update the .CSS you can just visit any page on site and add ?compress=scss. (Or you can change the trigger to any variable / keyword Budug, for security.)

    You'll no longer be able to see the plugin options page with this so you have to set those settings first.

    You probably don't have to wrap the entire page with brackets but I didn't want to waste any time looking at what to hone in on and knew this would work just as good.

  9. dmbostan commented on Feb 2, 2017

    @dmbostan

    @ReessKennedy thanks! Will give it a try.

  10. self-assigned this
    on Jun 21, 2017
  11. primathon commented on Dec 8, 2017

    @primathon

    @ReessKennedy @dmbostan Here's how I got this working. Wanted to regenerate the stylesheets whenever I saved an SCSS file within the AceIDE editor. Took quite a bit of debugging to find the correct hooks, but it's actually incredibly simple in the end:

    // functions.php - Integration between AceIDE save event and regenerating WP-SCSS files
    function mx_compile_wpscss_on_aceide_save()
    {
      if ( (class_exists('AceIDE\Editor\IDE')) && (class_exists('Wp_Scss')) )
      {
    	add_action('shutdown', 'wp_scss_needs_compiling');
      }
    }
    add_action('wp_ajax_aceide_save_file', 'mx_compile_wpscss_on_aceide_save');
    

    Really, all you need to do is pick a place to add the wp_scss_needs_compiling function to the shutdown hook, and it'll take care of the rest.

  12. changed the title [-]How to trigger wp scss[/-] [+]Trigger wp scss to compile based on URL trigger (webhook)[/+] on Aug 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions