Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
  1. Cloudron Forum
  2. WordPress (Developer)
  3. Cron tasks

Cron tasks

Scheduled Pinned Locked Moved Solved WordPress (Developer)
35 Posts 3 Posters 3.6k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • girishG girish

    So, I think the command below will list the cron events and schedules. So, if the plugin scheduled it, it will appear below.

    sudo -u www-data -i -- /app/pkg/wp --path=/app/data/public/ cron event list
    
    mdreiraM Offline
    mdreiraM Offline
    mdreira
    translator
    wrote on last edited by
    #6

    @girish It seems to me that the plugin task does not appear in the list.

    I'm going to discuss this with the plugin folks. I'll tell you something when they answer me.

    Thank you!

    1 Reply Last reply
    0
    • girishG girish

      So, I think the command below will list the cron events and schedules. So, if the plugin scheduled it, it will appear below.

      sudo -u www-data -i -- /app/pkg/wp --path=/app/data/public/ cron event list
      
      mdreiraM Offline
      mdreiraM Offline
      mdreira
      translator
      wrote on last edited by mdreira
      #7

      @girish Yes, the task was on the list.

      The plugin people ask me what is the code with which Cloudron starts wp-cron to see if it is compatible.

      EDIT: I have seen the error. Screenshot: https://prnt.sc/26qc3mk

      1 Reply Last reply
      0
      • girishG girish

        So, I think the command below will list the cron events and schedules. So, if the plugin scheduled it, it will appear below.

        sudo -u www-data -i -- /app/pkg/wp --path=/app/data/public/ cron event list
        
        d19dotcaD Offline
        d19dotcaD Offline
        d19dotca
        wrote on last edited by d19dotca
        #8

        @girish Side note but FWIW, it may be worth updating/clarifying the documentation here: https://docs.cloudron.io/apps/wordpress-developer/#cron-tasks

        The doc saying "The app is configured to run WordPress cron tasks every minute." seems a bit conflicted with the statement later that reads "WordPress' built-in cron task schedule wp-cron is disabled since it is not effective for low traffic websites."

        I believe we're running our own cron tasks in Cloudron which manually invokes the WP-Cron every minute instead of the default behaviour of WP running it itself only when the website is visited, correct?

        --
        Dustin Dauncey
        www.d19.ca

        girishG 1 Reply Last reply
        0
        • d19dotcaD d19dotca

          @girish Side note but FWIW, it may be worth updating/clarifying the documentation here: https://docs.cloudron.io/apps/wordpress-developer/#cron-tasks

          The doc saying "The app is configured to run WordPress cron tasks every minute." seems a bit conflicted with the statement later that reads "WordPress' built-in cron task schedule wp-cron is disabled since it is not effective for low traffic websites."

          I believe we're running our own cron tasks in Cloudron which manually invokes the WP-Cron every minute instead of the default behaviour of WP running it itself only when the website is visited, correct?

          girishG Offline
          girishG Offline
          girish
          Staff
          wrote on last edited by
          #9

          @d19dotca Right... wp-cron with the hyphen refers to the file wp-cron.php which is this PHP code that runs WP cron jobs via apache. Of course, PHP code only runs if someone visits the web site. So, if no one visits your site for an hour, cron jobs are not run. So, on Cloudron (and most other WP hosts), we set up an external scheduler/timer to run the cron jobs.

          I guess what is being said is The app is configured to run WordPress' cron tasks every minute without using the built-in wp-cron

          mdreiraM 1 Reply Last reply
          1
          • girishG girish

            @d19dotca Right... wp-cron with the hyphen refers to the file wp-cron.php which is this PHP code that runs WP cron jobs via apache. Of course, PHP code only runs if someone visits the web site. So, if no one visits your site for an hour, cron jobs are not run. So, on Cloudron (and most other WP hosts), we set up an external scheduler/timer to run the cron jobs.

            I guess what is being said is The app is configured to run WordPress' cron tasks every minute without using the built-in wp-cron

            mdreiraM Offline
            mdreiraM Offline
            mdreira
            translator
            wrote on last edited by mdreira
            #10

            @girish have you seen anything in error log? https://prnt.sc/26qc3mk

            EDIT: The plugin guys tell us that the problem is the way we call to wp-cron.

            So even though Cloudron calls wp-cron every minute, I would like to call it twice a day more with the typical type of call from the cron tab. Something like:

            0 */12 * * * /usr/bin/php -q /public/wp-cron.php >/dev/null 2

            This is the type of call that the plugin needs. It's possible?

            We are interested in this image optimization plugin because it optimizes images in the cloud without a limit of megabytes. I have to try to make it work.

            If you know of another plugin that does the same and works on cloudron, we can switch.

            girishG 1 Reply Last reply
            0
            • mdreiraM mdreira

              @girish have you seen anything in error log? https://prnt.sc/26qc3mk

              EDIT: The plugin guys tell us that the problem is the way we call to wp-cron.

              So even though Cloudron calls wp-cron every minute, I would like to call it twice a day more with the typical type of call from the cron tab. Something like:

              0 */12 * * * /usr/bin/php -q /public/wp-cron.php >/dev/null 2

              This is the type of call that the plugin needs. It's possible?

              We are interested in this image optimization plugin because it optimizes images in the cloud without a limit of megabytes. I have to try to make it work.

              If you know of another plugin that does the same and works on cloudron, we can switch.

              girishG Offline
              girishG Offline
              girish
              Staff
              wrote on last edited by girish
              #11

              @mdreira We use WP CLI to run cron jobs like so:

              sudo -u www-data -i -- /app/pkg/wp --skip-themes --path=/app/data/public/ cron event run --due-now
              

              Are you able to run the command above manually and see if it produces the error message ? Also, remove the --skip-themes and check if that helps as well, maybe that's causing the problem. TBH, I am not 100% sure why we have --skip-themes there, it should probably be removed.

              mdreiraM 1 Reply Last reply
              0
              • girishG girish

                @mdreira We use WP CLI to run cron jobs like so:

                sudo -u www-data -i -- /app/pkg/wp --skip-themes --path=/app/data/public/ cron event run --due-now
                

                Are you able to run the command above manually and see if it produces the error message ? Also, remove the --skip-themes and check if that helps as well, maybe that's causing the problem. TBH, I am not 100% sure why we have --skip-themes there, it should probably be removed.

                mdreiraM Offline
                mdreiraM Offline
                mdreira
                translator
                wrote on last edited by mdreira
                #12

                @girish Here I send you the screenshot of the terminal after sending those commands:

                Captura de pantalla 2022-02-09 a las 21.20.31.jpg

                Running it like this did not make the plugin work.

                The plugin cron task is this:

                Captura de pantalla 2022-02-09 a las 21.20.42.jpg

                When the cron executes this task it gives me this error:

                Captura de pantalla 2022-02-09 a las 21.20.53.jpg

                Is there any other way to execute that task? I have to get that plugin working. The plugin people don't know what's going on because our cloudron server is something special ๐Ÿ˜„

                girishG 2 Replies Last reply
                0
                • mdreiraM mdreira

                  @girish Here I send you the screenshot of the terminal after sending those commands:

                  Captura de pantalla 2022-02-09 a las 21.20.31.jpg

                  Running it like this did not make the plugin work.

                  The plugin cron task is this:

                  Captura de pantalla 2022-02-09 a las 21.20.42.jpg

                  When the cron executes this task it gives me this error:

                  Captura de pantalla 2022-02-09 a las 21.20.53.jpg

                  Is there any other way to execute that task? I have to get that plugin working. The plugin people don't know what's going on because our cloudron server is something special ๐Ÿ˜„

                  girishG Offline
                  girishG Offline
                  girish
                  Staff
                  wrote on last edited by
                  #13

                  @mdreira please post the images inline in this forum. You can just ctrl+v the screenshot to paste in the forum. I am afraid those images will go away at some point and this post will be meaningless if those images go away....

                  1 Reply Last reply
                  0
                  • mdreiraM mdreira

                    @girish Here I send you the screenshot of the terminal after sending those commands:

                    Captura de pantalla 2022-02-09 a las 21.20.31.jpg

                    Running it like this did not make the plugin work.

                    The plugin cron task is this:

                    Captura de pantalla 2022-02-09 a las 21.20.42.jpg

                    When the cron executes this task it gives me this error:

                    Captura de pantalla 2022-02-09 a las 21.20.53.jpg

                    Is there any other way to execute that task? I have to get that plugin working. The plugin people don't know what's going on because our cloudron server is something special ๐Ÿ˜„

                    girishG Offline
                    girishG Offline
                    girish
                    Staff
                    wrote on last edited by
                    #14

                    @mdreira Also, can you tell me which plugin this is? From the screenshot it says weimgoptimizer but https://wordpress.org/plugins/search/weimgoptimizer/ is a not found.

                    mdreiraM 1 Reply Last reply
                    0
                    • girishG girish

                      @mdreira Also, can you tell me which plugin this is? From the screenshot it says weimgoptimizer but https://wordpress.org/plugins/search/weimgoptimizer/ is a not found.

                      mdreiraM Offline
                      mdreiraM Offline
                      mdreira
                      translator
                      wrote on last edited by
                      #15

                      @girish The plugin is optimizador.io (https://optimizador.io/)

                      Right now I edit the links of the screenshots and upload the images directly.

                      girishG 3 Replies Last reply
                      0
                      • mdreiraM mdreira

                        @girish The plugin is optimizador.io (https://optimizador.io/)

                        Right now I edit the links of the screenshots and upload the images directly.

                        girishG Offline
                        girishG Offline
                        girish
                        Staff
                        wrote on last edited by
                        #16

                        @mdreira I will give it a try locally to see if I can reproduce the problem.

                        1 Reply Last reply
                        0
                        • girishG Offline
                          girishG Offline
                          girish
                          Staff
                          wrote on last edited by
                          #17

                          Struggling to get this API key. https://optimizador.io/registro-clave-api/ has no form to fill anything, not sure how to proceed.

                          mdreiraM 1 Reply Last reply
                          0
                          • girishG girish

                            Struggling to get this API key. https://optimizador.io/registro-clave-api/ has no form to fill anything, not sure how to proceed.

                            mdreiraM Offline
                            mdreiraM Offline
                            mdreira
                            translator
                            wrote on last edited by mdreira
                            #18
                            This post is deleted!
                            girishG 1 Reply Last reply
                            0
                            • mdreiraM mdreira

                              This post is deleted!

                              girishG Offline
                              girishG Offline
                              girish
                              Staff
                              wrote on last edited by
                              #19

                              @mdreira apparently, that page doesn't work in firefox. works in chrome.

                              1 Reply Last reply
                              1
                              • girishG Offline
                                girishG Offline
                                girish
                                Staff
                                wrote on last edited by
                                #20

                                You can run the specific hook like this

                                root@d2c84f40-ba29-47fd-87a5-48c873006e89:/app/code# sudo -u www-data -i -- /app/pkg/wp --skip-themes --path=/app/data/public/ cron event run my_schedule_hook
                                

                                I am getting the same exception you posted.

                                mdreiraM 1 Reply Last reply
                                2
                                • girishG girish

                                  You can run the specific hook like this

                                  root@d2c84f40-ba29-47fd-87a5-48c873006e89:/app/code# sudo -u www-data -i -- /app/pkg/wp --skip-themes --path=/app/data/public/ cron event run my_schedule_hook
                                  

                                  I am getting the same exception you posted.

                                  mdreiraM Offline
                                  mdreiraM Offline
                                  mdreira
                                  translator
                                  wrote on last edited by
                                  #21

                                  @girish Yes, it seems that something is failing

                                  1 Reply Last reply
                                  0
                                  • mdreiraM mdreira

                                    @girish The plugin is optimizador.io (https://optimizador.io/)

                                    Right now I edit the links of the screenshots and upload the images directly.

                                    girishG Offline
                                    girishG Offline
                                    girish
                                    Staff
                                    wrote on last edited by
                                    #22

                                    @mdreira It seems that global variables are not working. The clue is from this error message:

                                    WordPress database error Table 'c801e5ebba2fb24b.wp_' doesn't exist for query 
                                            SELECT *
                                            FROM wp_
                                            WHERE meta_id = 6
                                            AND thumb_size = 'we_original_size'
                                            ORDER BY time DESC
                                          made by include('phar:///app/pkg/wp/php/boot-phar.php'), include('phar:///app/pkg/wp/vendor/wp-cli/wp-cli/php/wp-cli.php'), WP_CLI\bootstrap, WP_CLI\Bootstrap\LaunchRunner->process, WP_CLI\Runner->start, WP_CLI\Runner->run_command_and_exit, WP_CLI\Runner->run_command, WP_CLI\Dispatcher\Subcommand->invoke, call_user_func, WP_CLI\Dispatcher\CommandFactory::WP_CLI\Dispatcher\{closure}, call_user_func, Cron_Event_Command->run, Cron_Event_Command::run_event, do_action_ref_array('my_schedule_hook'), WP_Hook->do_action, WP_Hook->apply_filters, oiwe_my_schedule_function, oiwe_optimize_concurrent_image_by_att_id, oiwe_isOptimized
                                    

                                    The relevant code is:

                                    function oiwe_get_optimization_data_by_attID($id){
                                    
                                            global $wpdb;
                                            global $OIWE_TABLENAME;
                                    
                                            $table_name = $wpdb->prefix . $OIWE_TABLENAME ;
                                    
                                             $querystr = "
                                                SELECT *
                                                FROM $table_name
                                                WHERE meta_id = $id
                                            AND thumb_size = 'we_original_size'
                                                    GROUP BY uuid
                                                ORDER BY time DESC
                                             ";
                                    
                                            $optimizations = $wpdb->get_results($querystr, OBJECT);
                                    
                                            return $optimizations ;
                                    }
                                    

                                    In the above, OIWE_TABLENAME is null . In fact, all the globals in that file are "null" which is why we later get the error that string is expected. My PHP skillz are being put to test...

                                    1 Reply Last reply
                                    1
                                    • girishG Offline
                                      girishG Offline
                                      girish
                                      Staff
                                      wrote on last edited by
                                      #23

                                      So strange, I cannot figure why this is. There is a constants.php in the plugin. I put the logs below:

                                      <?php
                                      
                                      $OIWE_API_URL = "http://apiv1.optimizador.io:80/";
                                      global $OIWE_API_URL ;
                                      $PLUGIN_VERSION = "1.0.22";
                                      error_log('The version is ' . $PLUGIN_VERSION);
                                      global $PLUGIN_VERSION;
                                      error_log('The version is now ' . $PLUGIN_VERSION);
                                      
                                      $OIWE_TABLENAME =  "imgoptimizations";
                                      global $OIWE_TABLENAME;
                                      
                                      

                                      Now, if I run via PHP cli:

                                      root@d2c84f40-ba29-47fd-87a5-48c873006e89:/app/data# php /app/data/public/wp-content/plugins/weimgoptimizer/includes/constants.php
                                      The version is 1.0.22
                                      The version is now 1.0.22
                                      

                                      So, the above works as expected. But if I now run this via WP CRON:

                                      root@d2c84f40-ba29-47fd-87a5-48c873006e89:/app/code# sudo -u www-data -i -- /app/pkg/wp --path=/app/data/public/ cron event run my_schedule_hook
                                      The version is 1.0.22
                                      The version is now 
                                      

                                      The version is empty for the second one! In fact, all the global things like global $PLUGIN_VERSION; in constants.php become immediately empty . FWIW, the global usage above seems to be incorrect. In PHP AFAIK, global is to declare that you are going to use a global variable and not that a variable has to become global.

                                      1 Reply Last reply
                                      0
                                      • mdreiraM mdreira

                                        @girish The plugin is optimizador.io (https://optimizador.io/)

                                        Right now I edit the links of the screenshots and upload the images directly.

                                        girishG Offline
                                        girishG Offline
                                        girish
                                        Staff
                                        wrote on last edited by
                                        #24

                                        @mdreira BTW, it seems the plugin uploads all images via http and not https (see the API URL in constants.php).

                                        mdreiraM 1 Reply Last reply
                                        0
                                        • girishG girish

                                          @mdreira BTW, it seems the plugin uploads all images via http and not https (see the API URL in constants.php).

                                          mdreiraM Offline
                                          mdreiraM Offline
                                          mdreira
                                          translator
                                          wrote on last edited by
                                          #25

                                          @girish As I don't understand anything about php, I don't really know what's going on. ๐Ÿ˜…

                                          Is the error you're seeing something on our side or is the side of plugin guys?

                                          girishG 2 Replies Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Bookmarks
                                          • Search