This repository has been archived by the owner on Nov 29, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathstart.php
85 lines (68 loc) · 2.89 KB
/
start.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<?php
use hypeJunction\Seo\Menus;
use hypeJunction\Seo\Page;
use hypeJunction\Seo\Router;
use hypeJunction\Seo\RewriteService;
/**
* SEO and Analytics Tools for Elgg
*
* @author Ismayil Khayredinov <[email protected]>
* @copyright Copyright (c) 2015-2016, Ismayil Khayredinov
*/
require_once __DIR__ . '/autoloader.php';
elgg_register_event_handler('init', 'system', function() {
elgg_extend_view('elgg.css', 'seo.css');
elgg_extend_view('admin.css', 'seo.css');
elgg_register_page_handler('seo', [Router::class, 'handleSeoPages']);
elgg_register_action('seo/autogen', __DIR__ . '/actions/seo/autogen.php', 'admin');
elgg_register_action('seo/edit', __DIR__ . '/actions/seo/edit.php', 'admin');
elgg_register_action('seo/delete', __DIR__ . '/actions/seo/delete.php', 'admin');
elgg_register_action('seo/sitemap', __DIR__ . '/actions/seo/sitemap.php', 'admin');
elgg_register_event_handler('create', 'all', [RewriteService::class, 'updateEntityRewriteRules']);
elgg_register_event_handler('update', 'all', [RewriteService::class, 'updateEntityRewriteRules']);
elgg_register_event_handler('delete', 'all', [RewriteService::class, 'updateEntityRewriteRules']);
elgg_register_plugin_hook_handler('view_vars', 'output/url', [RewriteService::class, 'rewriteInlineUrls']);
elgg_register_plugin_hook_handler('head', 'page', [Page::class, 'setHeadMeta']);
elgg_register_plugin_hook_handler('robots.txt', 'site', [Page::class, 'configureRobots']);
elgg_register_plugin_hook_handler('register', 'menu:extras', [Menus::class, 'setupExtrasMenu']);
$subtypes = get_registered_entity_types('object');
foreach ($subtypes as $subtype) {
elgg_register_plugin_hook_handler('view', "object/$subtype", [\hypeJunction\Seo\RelFollow::class, 'trustLinksInContent']);
}
elgg_register_menu_item('page', array(
'name' => 'seo:settings',
'href' => 'admin/plugin_settings/hypeSeo',
'text' => elgg_echo('admin:seo:settings'),
'context' => 'admin',
'section' => 'seo'
));
elgg_register_menu_item('page', array(
'name' => 'seo:generator',
'href' => 'admin/seo/generator',
'text' => elgg_echo('admin:seo:generator'),
'context' => 'admin',
'section' => 'seo'
));
elgg_register_menu_item('page', array(
'name' => 'seo:rules',
'href' => 'admin/seo/rules',
'text' => elgg_echo('admin:seo:rules'),
'context' => 'admin',
'section' => 'seo'
));
elgg_register_menu_item('page', array(
'name' => 'seo:sitemap',
'href' => 'admin/seo/sitemap',
'text' => elgg_echo('admin:seo:sitemap'),
'context' => 'admin',
'section' => 'seo'
));
});
elgg_register_plugin_hook_handler('route:rewrite', 'all', [Router::class, 'enforceRewriteRules'], 1);
elgg_register_plugin_hook_handler('route:rewrite', 'sitemap.xml', [Router::class, 'rewriteSitemapRoute'], 1);
elgg_register_event_handler('upgrade', 'system', function() {
if (!elgg_is_admin_logged_in()) {
return;
}
require_once __DIR__ . '/lib/upgrades.php';
});