{"id":21989200,"url":"https://github.com/micropackage/ajax","last_synced_at":"2025-04-30T11:29:51.855Z","repository":{"id":62528295,"uuid":"239521067","full_name":"micropackage/ajax","owner":"micropackage","description":"AJAX wrapper for WordPress","archived":false,"fork":false,"pushed_at":"2020-02-12T11:22:45.000Z","size":32,"stargazers_count":10,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2024-11-24T09:40:04.172Z","etag":null,"topics":["ajax","bracketspace","micropackage","php","wordpress","wrapper"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/micropackage.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-02-10T13:41:11.000Z","updated_at":"2023-11-07T12:53:35.000Z","dependencies_parsed_at":"2022-11-02T14:30:24.325Z","dependency_job_id":null,"html_url":"https://github.com/micropackage/ajax","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/micropackage%2Fajax","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/micropackage%2Fajax/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/micropackage%2Fajax/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/micropackage%2Fajax/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/micropackage","download_url":"https://codeload.github.com/micropackage/ajax/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227198215,"owners_count":17746505,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ajax","bracketspace","micropackage","php","wordpress","wrapper"],"created_at":"2024-11-29T19:28:21.224Z","updated_at":"2024-11-29T19:28:21.889Z","avatar_url":"https://github.com/micropackage.png","language":"PHP","readme":"# Ajax\n\n[![BracketSpace Micropackage](https://img.shields.io/badge/BracketSpace-Micropackage-brightgreen)](https://bracketspace.com)\n[![Latest Stable Version](https://poser.pugx.org/micropackage/ajax/v/stable)](https://packagist.org/packages/micropackage/ajax)\n[![PHP from Packagist](https://img.shields.io/packagist/php-v/micropackage/ajax.svg)](https://packagist.org/packages/micropackage/ajax)\n[![Total Downloads](https://poser.pugx.org/micropackage/ajax/downloads)](https://packagist.org/packages/micropackage/ajax)\n[![License](https://poser.pugx.org/micropackage/ajax/license)](https://packagist.org/packages/micropackage/ajax)\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://bracketspace.com/extras/micropackage/micropackage-small.png\" alt=\"Micropackage logo\"/\u003e\n\u003c/p\u003e\n\n## 🧬 About Ajax\n\nThis micropackage is a wrapper for WordPress AJAX responses in PHP.\n\n## 💾 Installation\n\n``` bash\ncomposer require micropackage/ajax\n```\n\n## 🕹 Usage\n\n### Basic usage\n\n```php\nuse Micropackage\\Ajax\\Response;\n\nfunction ajax_action_handler() {\n\t$response = new Response();\n\n\t// Handle nonce.\n\t$response-\u003everify_nonce( $action = 'my_action', $query_arg = 'noncefield', $send_if_failed = true );\n\n\t// Do some checks and immediately send an error.\n\tif ( something_is_wrong() ) {\n\t\t$response-\u003eerror( 'Error message' );\n\t}\n\n\t// This is never reached.\n\t$response-\u003esend( 'All good' );\n\n}\n```\n\n### Error collecting\n\nYou can collect multiple errors in one response.\n\n```php\nuse Micropackage\\Ajax\\Response;\n\nfunction ajax_action_handler() {\n\t$response = new Response();\n\n\t// Do some checks.\n\tif ( something_is_wrong() ) {\n\t\t$response-\u003eadd_error( 'Error message' );\n\t}\n\n\t// Do some checks.\n\tif ( something_else_is_wrong() ) {\n\t\t$response-\u003eadd_error( 'Whoah!' );\n\t}\n\n\t// If no error added, the below message will be sent.\n\t$response-\u003esend( 'All good if no errors' );\n\n}\n```\n\n### Sending data\n\n```php\nuse Micropackage\\Ajax\\Response;\n\nfunction ajax_action_handler() {\n\t$response = new Response();\n\t$response-\u003esend( $data_array );\n}\n```\n\n## 📦 About the Micropackage project\n\nMicropackages - as the name suggests - are micro packages with a tiny bit of reusable code, helpful particularly in WordPress development.\n\nThe aim is to have multiple packages which can be put together to create something bigger by defining only the structure.\n\nMicropackages are maintained by [BracketSpace](https://bracketspace.com).\n\n## 📖 Changelog\n\n[See the changelog file](./CHANGELOG.md).\n\n## 📃 License\n\nGNU General Public License (GPL) v3.0. See the [LICENSE](./LICENSE) file for more information.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicropackage%2Fajax","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicropackage%2Fajax","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicropackage%2Fajax/lists"}