{"id":359650,"date":"2026-08-28T21:47:18","date_gmt":"2026-08-28T21:47:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/brazil-jobs-importer\/"},"modified":"2026-08-28T21:46:50","modified_gmt":"2026-08-28T21:46:50","slug":"employed-jobs-importer","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/employed-jobs-importer\/","author":23555902,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.12","stable_tag":"1.0.12","tested":"7.1","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Employed Jobs Importer","header_author":"Employed","header_description":"Import Brazilian job listings from Employed with Google for Jobs markup. Zero-config sync by state or city.","assets_banners_color":"","last_updated":"2026-08-28 21:46:50","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/employed.com.br\/","header_author_uri":"https:\/\/employed.com.br","rating":5,"author_block_rating":0,"active_installs":0,"downloads":66,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.12":{"tag":"1.0.12","author":"employed","date":"2026-08-28 21:46:50","revision":3670947}},"upgrade_notice":{"1.0.12":"<p>No action required; internal variable prefix cleanup for Plugin Check compliance.<\/p>","1.0.11":"<p>Prefix rename: run Sync now after updating so jobs appear under the new post type.<\/p>","1.0.9":"<p>Renamed plugin slug and display name; update shortcode to <code>[employed_jobs]<\/code> if used in content.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.12"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Plugin settings \u2014 scope, sync status, and automatic import notice","2":"Job archive at <code>\/vagas\/<\/code> with card layout","3":"Single job page with details sidebar and Apply button"}},"plugin_section":[],"plugin_tags":[8287,278130,15888,278129,9023],"plugin_category":[39],"plugin_contributors":[278131],"plugin_business_model":[],"class_list":["post-359650","plugin","type-plugin","status-publish","hentry","plugin_tags-brazil","plugin_tags-employed","plugin_tags-employment","plugin_tags-google-for-jobs","plugin_tags-jobs","plugin_category-business","plugin_contributors-employed","plugin_committers-employed"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/employed-jobs-importer.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Employed Jobs Importer pulls job listings from the public Employed feed into your WordPress site. No API key or license is required.<\/p>\n\n<p>Employed (employed.com.br) is a Brazilian job platform for candidates. Job listings are aggregated from multiple external portals.<\/p>\n\n<p><strong>Features<\/strong><\/p>\n\n<ul>\n<li>Zero-config setup: choose one or more states (UF) or a specific city, then sync.<\/li>\n<li>City picker uses official IBGE municipality names (cached locally).<\/li>\n<li>Custom post type <code>empljoim_job<\/code> with archive at <code>\/vagas\/<\/code>.<\/li>\n<li>Daily automatic sync (~04:00 site timezone) plus manual sync.<\/li>\n<li>Google for Jobs <code>JobPosting<\/code> JSON-LD on single job pages.<\/li>\n<li>Apply button on job pages.<\/li>\n<li>Shortcode <code>[employed_jobs]<\/code> and styled archive\/single templates.<\/li>\n<\/ul>\n\n<p>Job data is provided by <a href=\"https:\/\/employed.com.br\/\">Employed<\/a>. Application happens on the Employed website.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to third-party services over HTTPS. No personal visitor data from your site is sent to these services when a visitor only browses pages. Data is sent from your WordPress server during admin configuration, manual sync, scheduled sync, or when loading the city list.<\/p>\n\n<h4>Employed job feed<\/h4>\n\n<p>This plugin uses the public Employed distribution API to import job listings into WordPress.<\/p>\n\n<p><strong>Service:<\/strong> <a href=\"https:\/\/employed.com.br\/\">Employed<\/a> \u2014 Brazilian job platform that aggregates listings from external portals.<\/p>\n\n<p><strong>Used for:<\/strong> Downloading job listings filtered by state (UF) and optionally by city, then storing them locally as <code>empljoim_job<\/code> posts.<\/p>\n\n<p><strong>When data is sent:<\/strong> On manual sync, on the daily cron (~04:00 site timezone), and during paginated feed requests while sync runs.<\/p>\n\n<p><strong>Data sent:<\/strong> Your server IP address, a <code>User-Agent<\/code> string identifying the plugin and your site URL, an optional <code>X-EMPLJOIM-Site<\/code> header containing <code>home_url('\/')<\/code>, and query parameters (<code>estado<\/code>, optional <code>cidade<\/code>, pagination). No WordPress user accounts or site visitor personal data are transmitted.<\/p>\n\n<p><strong>Legal:<\/strong> <a href=\"https:\/\/employed.com.br\/termos-de-uso\/\">Terms of Use<\/a>, <a href=\"https:\/\/employed.com.br\/politica-de-privacidade\/\">Privacy Policy<\/a><\/p>\n\n<h4>IBGE municipality API<\/h4>\n\n<p>This plugin uses the public IBGE (Brazilian Institute of Geography and Statistics) API to populate the city dropdown when you choose city scope.<\/p>\n\n<p><strong>Service:<\/strong> IBGE \u2014 <code>servicodados.ibge.gov.br<\/code><\/p>\n\n<p><strong>Used for:<\/strong> Loading official municipality names for a selected Brazilian state (UF). Results are cached locally on your site for 30 days.<\/p>\n\n<p><strong>When data is sent:<\/strong> When an administrator selects a UF in city scope, clicks <strong>Update list<\/strong>, or when the city list is loaded in the settings screen.<\/p>\n\n<p><strong>Data sent:<\/strong> The selected UF code in the request URL only. No personal data is sent.<\/p>\n\n<p><strong>Legal:<\/strong> <a href=\"https:\/\/www.ibge.gov.br\/acesso-informacao\/politica-de-privacidade.html\">Privacy Policy<\/a>, <a href=\"https:\/\/www.ibge.gov.br\/\">About IBGE<\/a><\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install from <strong>Plugins \u2192 Add New<\/strong>, or upload the zip.<\/li>\n<li>Activate <strong>Employed Jobs Importer<\/strong>.<\/li>\n<li>Open <strong>Employed Jobs Importer<\/strong> in the admin sidebar.<\/li>\n<li>Choose <strong>State (UF)<\/strong> (one or more) or <strong>City<\/strong> scope.<\/li>\n<li>For city scope: select UF, wait for the IBGE city list, pick a municipality.<\/li>\n<li>Click <strong>Save<\/strong>, then <strong>Sync now<\/strong>.<\/li>\n<\/ol>\n\n<p>Imported jobs appear at <code>\/vagas\/<\/code> and via the <code>[employed_jobs]<\/code> shortcode.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20an%20api%20key%3F\"><h3>Do I need an API key?<\/h3><\/dt>\n<dd><p>No. The plugin uses Employed's public distribution feed. Install, choose your scope, and sync.<\/p><\/dd>\n<dt id=\"where%20does%20the%20city%20list%20come%20from%3F\"><h3>Where does the city list come from?<\/h3><\/dt>\n<dd><p>From the public IBGE (Brazilian Institute of Geography and Statistics) API. Municipality names are cached on your site for 30 days.<\/p><\/dd>\n<dt id=\"where%20does%20apply%20send%20users%3F\"><h3>Where does Apply send users?<\/h3><\/dt>\n<dd><p>To the canonical job page on employed.com.br. The plugin does not store or expose employer direct application URLs.<\/p><\/dd>\n<dt id=\"what%20is%20the%20difference%20between%20state%20and%20city%20scope%3F\"><h3>What is the difference between State and City scope?<\/h3><\/dt>\n<dd><p><strong>State<\/strong> imports jobs from one or more selected UFs. <strong>City<\/strong> imports jobs filtered to a single municipality within one UF.<\/p><\/dd>\n<dt id=\"how%20often%20does%20sync%20run%3F\"><h3>How often does sync run?<\/h3><\/dt>\n<dd><p>A daily cron runs around 04:00 in your site timezone. You can also sync manually from the plugin settings screen.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20affect%20my%20theme%3F\"><h3>Does this plugin affect my theme?<\/h3><\/dt>\n<dd><p>No theme changes are required. The plugin registers its own post type, templates, schema markup, and shortcode.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.12<\/h4>\n\n<ul>\n<li>Plugin Check: prefixed template and uninstall local variables (empljoim_).<\/li>\n<\/ul>\n\n<h4>1.0.11<\/h4>\n\n<ul>\n<li>Internal prefix updated from <code>bji<\/code> to <code>empljoim<\/code> (classes, options, hooks, CPT, taxonomies, meta keys) per WordPress.org review.<\/li>\n<li>Test sites: settings and cities cache migrate on activation; re-sync to repopulate jobs under CPT <code>empljoim_job<\/code>.<\/li>\n<\/ul>\n\n<h4>1.0.10<\/h4>\n\n<ul>\n<li>Fix unexpected output on activation (UTF-8 BOM removed from PHP files).<\/li>\n<\/ul>\n\n<h4>1.0.9<\/h4>\n\n<ul>\n<li>Renamed to Employed Jobs Importer (<code>employed-jobs-importer<\/code>) per WordPress.org review.<\/li>\n<li>Fixed JSON-LD escaping; documented external services (Employed + IBGE).<\/li>\n<li>Plugin URI updated; shortcode is now <code>[employed_jobs]<\/code>.<\/li>\n<\/ul>\n\n<h4>1.0.8<\/h4>\n\n<ul>\n<li>Plugin Check: translators comments placed directly above i18n calls; inline phpcs ignores for required queries.<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Plugin Check: i18n translators comments, output escaping, input sanitization.<\/li>\n<li>Tested up to WordPress 7.1; removed discouraged load_plugin_textdomain() call.<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Initial WordPress.org submission.<\/li>\n<\/ul>","raw_excerpt":"Import Brazilian job listings from Employed into WordPress, with Google for Jobs markup.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/359650","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=359650"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/employed"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=359650"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=359650"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=359650"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=359650"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=359650"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=359650"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}