PHP code example of typerocket / pro
1. Go to this page and download the library: Download typerocket/pro library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
typerocket / pro example snippets
tr_post_type('Person')
->setIcon('users')
->forceDisableGutenberg()
->setTitlePlaceholder( 'Enter full name here' )
->setArchivePostsPerPage(-1)
->setTitleForm( function() {
$form = tr_form();
echo $form->image('Photo');
echo $form->text('Company');
echo $form->editor('About Person');
})
->addColumn('company');
$form->repeater('Speakers')->setFields([
$form->image('Photo'),
$form->row(
$form->text('Given Name'),
$form->text('Last Name')
)
]);
echo $form->image('Photo');
echo $form->text('Alt Text')->when('photo');
echo $form->Toggle('Has Name');
echo $form->feildset('Full Name', 'Your identity information.',
$form->text('Given Name'),
$form->text('Last Name')
)->when('has_name');
(new Post)->with('meta')->published()->whereMeta('featured', '=', '1')->get();
class Post extends WPPost
{
// ...
public function categories()
{
return $this->belongsToTaxonomy(Category::class, 'category');
}
public function tags()
{
return $this->belongsToTaxonomy(Tag::class, 'post_tag');
}
}
tr_route()->put()->on('/profile/*', 'update@Member');
tr_route()->get()->on('/profile/*', 'profile@Member');
class MemberController extends Controller
{
public function profile(Member $member) {
return tr_view('profile.show', compact('member'));
}
public function update(Member $member, AuthUser $user, Request $request ) {
if(!$member->can('update', $user)) {
tr_abort(401);
}
$member->save($request->getFields());
tr_response()->flashNext('Profile updated!');
return tr_redirect()->back();
}
}
tr_route()->get()->on('posts', function() {
return (new Post)->with('meta')->published()->get();
});
/**
* Example WordPress Template MVC
*
* your-theme/index.php
*
* @var WP_Post[] $posts
*/
tr_template_controller(function() use ($posts) {
$button_class = tr_post_field('button_class');
$classes = class_names('button', [
'button-primary' => $button_class == 'primary',
'button-error' => $button_class == 'error',
]);
return tr_view('index', compact('classes'));
});
// Admin page
tr_page('tools', 'exporter', 'Exporter')->setView(tr_view('tools.exporter'));