History

Add WordPress documentation

Szabolcs Légrádi committed 8 years ago

Commit 330e3371 parent 1be7a8f9 files · +101 −-2Browse files

Unified · Split

9 files
  1. assets/stylesheets/application-dark.css.scss +1 −0
  2. assets/stylesheets/application.css.scss +1 −0
  3. assets/stylesheets/pages/_wordpress.scss +11 −0
  4. lib/docs/filters/wordpress/clean_html.rb +27 −0
  5. lib/docs/filters/wordpress/entries.rb +23 −0
  6. lib/docs/scrapers/wordpress.rb +39 −0
  7. public/icons/docs/wordpress/16.png +0 −0
  8. public/icons/docs/wordpress/16@2x.png +0 −0
  9. public/icons/docs/wordpress/SOURCE +1 −0
assets/stylesheets/application-dark.css.scss+1−0
@@ -98,5 +98,6 @@ · 97 unmodified lines
98 'pages/underscore',98 'pages/underscore',
99 'pages/vue',99 'pages/vue',
100 'pages/webpack',100 'pages/webpack',
101 'pages/wordpress',
101 'pages/yard',102 'pages/yard',
102 'pages/yii';103 'pages/yii';
assets/stylesheets/application.css.scss+1−0
@@ -98,5 +98,6 @@ · 97 unmodified lines
98 'pages/underscore',98 'pages/underscore',
99 'pages/vue',99 'pages/vue',
100 'pages/webpack',100 'pages/webpack',
101 'pages/wordpress',
101 'pages/yard',102 'pages/yard',
102 'pages/yii';103 'pages/yii';
assets/stylesheets/pages/_wordpress.scss+11−0
@@ -0,0 +1,11 @@
1._wordpress {
2 @extend %simple;
3
4 .breadcrumbs {
5 display: none;
6 }
7
8 .callout-warning {
9 @extend %note, %note-red;
10 }
11}
lib/docs/filters/wordpress/clean_html.rb+27−0
@@ -0,0 +1,27 @@
1module Docs
2 class Wordpress
3 class CleanHtmlFilter < Filter
4 def call
5 if root_page?
6 doc.inner_html = '<h1>WordPress</h1>'
7 return doc
8 end
9
10 css('hr', '.screen-reader-text', '.table-of-contents',
11 '.anchor', '.toc-jump', '.source-code-links', '.related',
12 '.user-notes').remove
13
14 # Add PHP code highlighting
15 br = /<br\s?\/?>/i
16 css('.source-code-container', '.syntaxhighlighter').each do |node|
17 node.name = 'pre'
18 node.inner_html = node.inner_html.gsub(br, "\n")
19 node.content = node.content.strip
20 node['data-language'] = 'php'
21 end
22
23 doc
24 end
25 end
26 end
27end
lib/docs/filters/wordpress/entries.rb+23−0
@@ -0,0 +1,23 @@
1module Docs
2 class Wordpress
3 class EntriesFilter < Docs::EntriesFilter
4 def breadcrumbs
5 @breadcrumbs ||= css('.breadcrumbs .trail-inner a')
6 .map(&:content)
7 .map(&:strip)
8 end
9
10 def get_name
11 at_css('.breadcrumbs .trail-end').content
12 end
13
14 def get_type
15 if breadcrumbs.size > 1
16 breadcrumbs.drop(1).join(': ')
17 else
18 at_css('.breadcrumbs .trail-end').content
19 end
20 end
21 end
22 end
23end
lib/docs/scrapers/wordpress.rb+39−0
@@ -0,0 +1,39 @@
1module Docs
2 class Wordpress < UrlScraper
3 self.name = 'WordPress'
4 self.type = 'wordpress'
5 self.release = '4.9.4'
6 self.base_url = 'https://developer.wordpress.org/reference/'
7 self.initial_paths = %w(
8 functions/
9 hooks/
10 classes/
11 )
12
13 self.links = {
14 home: 'https://wordpress.org/',
15 code: 'https://github.com/WordPress/WordPress'
16 }
17
18 html_filters.push 'wordpress/clean_html', 'wordpress/entries'
19
20 options[:container] = '#content-area'
21 options[:trailing_slash] = true
22 options[:only_patterns] = [
23 /\Afunctions\//,
24 /\Ahooks\//,
25 /\Aclasses\//
26 ]
27
28 options[:skip_patterns] = [
29 /\Afunctions\/page\/\d+/,
30 /\Ahooks\/page\/\d+/,
31 /\Aclasses\/page\/\d+/
32 ]
33
34 options[:attribution] = <<-HTML
35 &copy; 2003&ndash;2018 WordPress Foundation<br>
36 Licensed under the GNU GPLv2+ License.
37 HTML
38 end
39end
public/icons/docs/wordpress/16.png+0−0

Binary file not shown.

public/icons/docs/wordpress/16@2x.png+0−0

Binary file not shown.

public/icons/docs/wordpress/SOURCE+1−0
@@ -0,0 +1 @@
1https://wordpress.org/about/logos/

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t