| | |
| | | <?php |
| | | // /taxonomies/progress.php |
| | | use JVBase\base\SchemaHelper; |
| | | use JVBase\managers\Cache; |
| | | use JVBase\meta\Meta; |
| | | use JVBase\registrar\Registrar; |
| | |
| | | 'type' => 'select', |
| | | 'label' => 'Type', |
| | | 'options' => [ |
| | | 'JVBase\managers\SEO\render\Thing\Person' => 'Person', |
| | | 'JVBase\managers\SEO\render\Thing\Organization\LocalBusiness\LocalBusiness' => 'Local Business', |
| | | 'JVBase\managers\SEO\render\Thing\Organization\Organization' => 'Organization' |
| | | 'person' => 'Person', |
| | | 'business' => 'Local Business', |
| | | 'organization' => 'Organization' |
| | | ] |
| | | ], |
| | | 'name' => [ |
| | |
| | | 'about' => [ |
| | | 'type' => 'JVBase\managers\SEO\render\Thing\CreativeWork\CreativeWork', |
| | | 'name' => '{{name}}', |
| | | 'creator' => '{{CREATOR}}', |
| | | 'sourceOrganization'=> '{{forType}}', |
| | | 'abstract' => '{{summary}}' |
| | | ], |
| | |
| | | } |
| | | |
| | | |
| | | return '<p>Or see <a href="'.get_home_url(null,'/projects/').'">all projects</a>.</p>'; |
| | | return '<p>Or see <a href="'.get_home_url(null,'/lists/projects/').'">all projects</a>.</p>'; |
| | | } |
| | | |
| | | add_filter('jvbBeforeSummary', 'ajv_project_before_summary', 10, 2); |
| | |
| | | if (!empty($meta->get($term))) { |
| | | $registrar = Registrar::getInstance($term); |
| | | |
| | | $titleExtra .= '<li>'.jvbIcon($registrar->getIcon()).jvbGetTermLink($meta->get($term), BASE.$term).'</li>'; |
| | | $titleExtra .= '<li>'.jvbIcon($registrar->getIcon()).jvbGetTermLink((int)$meta->get($term), BASE.$term).'</li>'; |
| | | } |
| | | } |
| | | if (!empty($titleExtra)) { |
| | |
| | | jvbIcon('arrow-circle-right') |
| | | ); |
| | | } |
| | | |
| | | function ajv_resolve_forType(string $variable, Meta $meta):string|array|\JVBase\managers\SEO\render\Thing\Thing |
| | | { |
| | | $result = $meta->get($variable); |
| | | $out = []; |
| | | if (empty($result)) { |
| | | return ''; |
| | | } |
| | | foreach ($result as $v) { |
| | | $type = match ($v['type']) { |
| | | 'person' => 'JVBase\managers\SEO\render\Thing\Person', |
| | | 'business' => 'JVBase\managers\SEO\render\Thing\Organization\LocalBusiness\LocalBusiness', |
| | | 'organization'=> 'JVBase\managers\SEO\render\Thing\Organization\Organization', |
| | | default => false |
| | | }; |
| | | if ($type) { |
| | | $v['type'] = $type; |
| | | $out[] = SchemaHelper::classFromConfig($v); |
| | | } |
| | | } |
| | | |
| | | return count($out) === 1 ? $out[0] : $out; |
| | | } |