Add meta helpers
Diff
composer.json | 5 ++++-
src/Models/Meta.php | 2 +-
src/Providers/WordpressServiceProvider.php | 8 +++++---
src/helpers.php | 30 ++++++++++++++++++++++++++++++
4 files changed, 40 insertions(+), 5 deletions(-)
@@ -17,6 +17,9 @@
"autoload": {
"psr-4": {
"Koselig\\": "src/"
}
},
"files": [
"src/helpers.php"
]
}
}
@@ -111,7 +111,7 @@ class Meta extends Model
*
* @param int|string|null|Post $page page to get meta for (or name of the meta item to get
* if you want to get the current page's meta)
* @param string|null $name
* @param string|null $name name of the field to get
* @param bool $format whether to format this field or not
*
* @throws UnsatisfiedDependencyException
@@ -155,8 +155,10 @@ class WordpressServiceProvider extends ServiceProvider
return resource_path('fields');
});
// hacky fix to get network admin working
Action::hook('network_site_url', [$this, 'rewriteNetworkUrl'], 10, 3);
// register custom post types defined in posttypes
$this->registerPostTypes();
}
@@ -167,9 +169,9 @@ class WordpressServiceProvider extends ServiceProvider
*/
protected function registerPostTypes()
{
foreach (config('posttypes') as $key => $value) {
register_post_type($key, $value);
}
collect(config('posttypes'))->each(function ($item, $key) {
register_post_type($key, $item);
});
}
/**
@@ -0,0 +1,30 @@
<?php
use Koselig\Models\Meta;
if (!function_exists('meta')) {
/**
* Grab a meta item from the database for the current page
*
* @param string|null $name name of the field to get (or null for all)
* @return mixed
*/
function meta($name = null)
{
return Meta::get($name);
}
}
if (!function_exists('acf')) {
/**
* Grab an ACF field from the database for the current page.
*
* @see Meta::acf()
*
* @param string|null $name name of the field to get (or null for all)
* @return mixed
*/
function acf($name = null)
{
return Meta::acf($name);
}
}