ruby-wpdb 1.2 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/bin/ruby-wpdb +4 -2
- data/data/query.log +40410 -0
- data/lib/ruby-wpdb/{comments.rb → comment.rb} +2 -6
- data/lib/ruby-wpdb/commentmeta.rb +5 -0
- data/lib/ruby-wpdb/config.rb +52 -21
- data/lib/ruby-wpdb/gravityforms.rb +11 -3
- data/lib/ruby-wpdb/link.rb +16 -0
- data/lib/ruby-wpdb/{options.rb → option.rb} +1 -1
- data/lib/ruby-wpdb/post.rb +66 -0
- data/lib/ruby-wpdb/postmeta.rb +5 -0
- data/lib/ruby-wpdb/term.rb +41 -0
- data/lib/ruby-wpdb/term_relationship.rb +12 -0
- data/lib/ruby-wpdb/term_taxonomy.rb +19 -0
- data/lib/ruby-wpdb/{users.rb → user.rb} +2 -5
- data/lib/ruby-wpdb/usermeta.rb +5 -0
- data/lib/ruby-wpdb/version.rb +1 -1
- data/lib/ruby-wpdb.rb +24 -16
- metadata +103 -24
- data/lib/ruby-wpdb/links.rb +0 -8
- data/lib/ruby-wpdb/posts.rb +0 -67
- data/lib/ruby-wpdb/terms.rb +0 -49
- data/test/comments_test.rb +0 -40
- data/test/config_test.rb +0 -20
- data/test/gravityforms_test.rb +0 -25
- data/test/links_test.rb +0 -28
- data/test/options_test.rb +0 -26
- data/test/posts_test.rb +0 -50
- data/test/readme_test.rb +0 -43
- data/test/terms_test.rb +0 -42
- data/test/test_helper.rb +0 -17
- data/test/users_test.rb +0 -47
@@ -9,8 +9,8 @@ module WPDB
|
|
9
9
|
class Comment < Sequel::Model(:"#{WPDB.prefix}comments")
|
10
10
|
plugin :validation_helpers
|
11
11
|
|
12
|
-
many_to_one :post, :
|
13
|
-
one_to_many :commentmeta, :
|
12
|
+
many_to_one :post, key: :comment_post_ID, class: 'WPDB::Post'
|
13
|
+
one_to_many :commentmeta, class: 'WPDB::CommentMeta'
|
14
14
|
|
15
15
|
def validate
|
16
16
|
super
|
@@ -25,8 +25,4 @@ module WPDB
|
|
25
25
|
super
|
26
26
|
end
|
27
27
|
end
|
28
|
-
|
29
|
-
class CommentMeta < Sequel::Model(:"#{WPDB.prefix}commentmeta")
|
30
|
-
many_to_one :comment, :class => :'WPDB::Comment'
|
31
|
-
end
|
32
28
|
end
|
data/lib/ruby-wpdb/config.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
module WPDB
|
2
2
|
module Config
|
3
|
-
|
3
|
+
module ConfigFormat
|
4
4
|
def initialize(file)
|
5
5
|
if file.respond_to? :read
|
6
6
|
@contents = file.read
|
@@ -11,10 +11,6 @@ module WPDB
|
|
11
11
|
parse
|
12
12
|
end
|
13
13
|
|
14
|
-
def parse
|
15
|
-
@config = ::YAML::load(@contents)
|
16
|
-
end
|
17
|
-
|
18
14
|
def config
|
19
15
|
uri = 'mysql2://'
|
20
16
|
uri += "#{@config['username']}:#{@config['password']}"
|
@@ -26,29 +22,64 @@ module WPDB
|
|
26
22
|
end
|
27
23
|
end
|
28
24
|
|
29
|
-
class
|
30
|
-
|
31
|
-
if file.respond_to? :read
|
32
|
-
@contents = file.read
|
33
|
-
else
|
34
|
-
@contents = File.read(file)
|
35
|
-
end
|
25
|
+
class YAML
|
26
|
+
include ConfigFormat
|
36
27
|
|
37
|
-
|
28
|
+
def parse
|
29
|
+
@config = ::YAML::load(ERB.new(@contents).result)
|
38
30
|
end
|
31
|
+
end
|
32
|
+
|
33
|
+
class WPConfig
|
34
|
+
include ConfigFormat
|
39
35
|
|
40
36
|
def parse
|
41
|
-
|
42
|
-
@config
|
37
|
+
config = Hash[@contents.scan(/define\((?:'|")(.+)(?:'|"), *(?:'|")(.+)(?:'|")\)/)]
|
38
|
+
@config = {
|
39
|
+
"username" => config["DB_USER"],
|
40
|
+
"password" => config["DB_PASSWORD"],
|
41
|
+
"hostname" => config["DB_HOST"],
|
42
|
+
"database" => config["DB_NAME"],
|
43
|
+
"prefix" => config["DB_PREFIX"] || "wp_"
|
44
|
+
}
|
43
45
|
end
|
46
|
+
end
|
44
47
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
48
|
+
class AutoDiscover
|
49
|
+
def initialize(directory = Dir.pwd)
|
50
|
+
@directory = Pathname(directory)
|
51
|
+
end
|
52
|
+
|
53
|
+
def file
|
54
|
+
@file ||= files.map { |file| @directory + file }.find { |file| File.exist?(file) }
|
55
|
+
end
|
56
|
+
|
57
|
+
private
|
58
|
+
def files
|
59
|
+
["wp-config.php", "../wp-config.php", "wp/wp-config.php", "wordpress/wp-config.php", "config.yml"]
|
60
|
+
end
|
61
|
+
end
|
50
62
|
|
51
|
-
|
63
|
+
class AutoFormat
|
64
|
+
attr_reader :filename
|
65
|
+
|
66
|
+
def initialize(filename)
|
67
|
+
@filename = Pathname(filename)
|
68
|
+
end
|
69
|
+
|
70
|
+
def format
|
71
|
+
case filename.extname
|
72
|
+
when ".yml", ".yaml"
|
73
|
+
Config::YAML
|
74
|
+
when ".php"
|
75
|
+
Config::WPConfig
|
76
|
+
else
|
77
|
+
nil
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
def config
|
82
|
+
format.new(filename).config
|
52
83
|
end
|
53
84
|
end
|
54
85
|
end
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'php_serialize'
|
2
|
+
require 'json'
|
2
3
|
require 'csv'
|
3
4
|
|
4
5
|
module WPDB
|
@@ -9,7 +10,11 @@ module WPDB
|
|
9
10
|
one_to_one :meta, :class => :'WPDB::GravityForms::FormMeta'
|
10
11
|
|
11
12
|
def fields
|
12
|
-
|
13
|
+
begin
|
14
|
+
display_meta = PHP.unserialize(meta.display_meta)
|
15
|
+
rescue TypeError
|
16
|
+
display_meta = JSON.parse(meta.display_meta)
|
17
|
+
end
|
13
18
|
display_meta['fields']
|
14
19
|
end
|
15
20
|
|
@@ -117,8 +122,10 @@ module WPDB
|
|
117
122
|
end
|
118
123
|
|
119
124
|
def sanitise_label(original_label)
|
125
|
+
@labels ||= []
|
126
|
+
|
120
127
|
original_label = original_label.to_s
|
121
|
-
return unless original_label.length > 0
|
128
|
+
return "" unless original_label.length > 0
|
122
129
|
|
123
130
|
i = 1
|
124
131
|
|
@@ -159,7 +166,7 @@ module WPDB
|
|
159
166
|
|
160
167
|
field_name = sanitise_label(field['label'])
|
161
168
|
|
162
|
-
next if field_name.
|
169
|
+
next if field_name.empty?
|
163
170
|
|
164
171
|
dataset = dataset.select_append(:"ld#{i}__value___#{field_name}")
|
165
172
|
end
|
@@ -202,6 +209,7 @@ module WPDB
|
|
202
209
|
# use in a Ruby variable name/symbol.
|
203
210
|
def self.underscoreize(string)
|
204
211
|
string.downcase
|
212
|
+
.gsub(/ +/, ' ')
|
205
213
|
.gsub(' ', '_')
|
206
214
|
.gsub(/[^a-z0-9_]/, '')
|
207
215
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module WPDB
|
2
|
+
class Link < Sequel::Model(:"#{WPDB.prefix}links")
|
3
|
+
include Termable
|
4
|
+
|
5
|
+
one_to_many :termrelationships,
|
6
|
+
key: :object_id,
|
7
|
+
key_method: :obj_id,
|
8
|
+
class: 'WPDB::TermRelationship'
|
9
|
+
|
10
|
+
many_to_many :termtaxonomy,
|
11
|
+
left_key: :object_id,
|
12
|
+
right_key: :term_taxonomy_id,
|
13
|
+
join_table: "#{WPDB.prefix}term_relationships",
|
14
|
+
class: 'WPDB::TermTaxonomy'
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,66 @@
|
|
1
|
+
Sequel.inflections do |inflect|
|
2
|
+
# Unless we tell Sequel otherwise, it will try to inflect the singular
|
3
|
+
# of "postmeta" using the "data" -> "datum" rule, leaving us with the
|
4
|
+
# bizarre "postmetum".
|
5
|
+
inflect.uncountable 'postmetas'
|
6
|
+
end
|
7
|
+
|
8
|
+
module WPDB
|
9
|
+
class Post < Sequel::Model(:"#{WPDB.prefix}posts")
|
10
|
+
include Termable
|
11
|
+
|
12
|
+
plugin :validation_helpers
|
13
|
+
plugin :sluggable, source: :post_title, target: :post_name
|
14
|
+
|
15
|
+
one_to_many :children,
|
16
|
+
key: :post_parent,
|
17
|
+
class: self do |ds|
|
18
|
+
ds.where(post_type: ['attachment', 'revision']).invert
|
19
|
+
.where(post_parent: self.ID)
|
20
|
+
end
|
21
|
+
one_to_many :revisions,
|
22
|
+
key: :post_parent,
|
23
|
+
class: self,
|
24
|
+
conditions: { post_type: 'revision' }
|
25
|
+
|
26
|
+
one_to_many :attachments,
|
27
|
+
key: :post_parent,
|
28
|
+
class: self,
|
29
|
+
conditions: { post_type: 'attachment' }
|
30
|
+
|
31
|
+
# In order to use Sequel add_postmeta function.
|
32
|
+
one_to_many :postmetas, class: 'WPDB::PostMeta'
|
33
|
+
one_to_many :comments, key: :comment_post_ID, class: 'WPDB::Comment'
|
34
|
+
one_to_many :termrelationships,
|
35
|
+
key: :object_id,
|
36
|
+
key_method: :obj_id,
|
37
|
+
class: 'WPDB::TermRelationship'
|
38
|
+
|
39
|
+
many_to_one :parent, class: self, key: :post_parent
|
40
|
+
many_to_one :author, key: :post_author, class: 'WPDB::User'
|
41
|
+
|
42
|
+
many_to_many :termtaxonomy,
|
43
|
+
left_key: :object_id,
|
44
|
+
right_key: :term_taxonomy_id,
|
45
|
+
join_table: "#{WPDB.prefix}term_relationships",
|
46
|
+
class: 'WPDB::TermTaxonomy'
|
47
|
+
|
48
|
+
def validate
|
49
|
+
super
|
50
|
+
validates_presence [:post_title, :post_type, :post_status]
|
51
|
+
validates_unique :post_name
|
52
|
+
end
|
53
|
+
|
54
|
+
def before_validation
|
55
|
+
self.post_type ||= "post"
|
56
|
+
self.post_status ||= "draft"
|
57
|
+
self.post_parent ||= 0
|
58
|
+
self.menu_order ||= 0
|
59
|
+
self.comment_status ||= "open"
|
60
|
+
self.ping_status ||= WPDB::Option.get_option("default_ping_status")
|
61
|
+
self.post_date ||= Time.now
|
62
|
+
self.post_date_gmt ||= Time.now.utc
|
63
|
+
super
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
module WPDB
|
2
|
+
class Term < Sequel::Model(:"#{WPDB.prefix}terms")
|
3
|
+
plugin :validation_helpers
|
4
|
+
plugin :sluggable, source: :name, target: :slug
|
5
|
+
|
6
|
+
one_to_many :termtaxonomies, class: 'WPDB::TermTaxonomy'
|
7
|
+
|
8
|
+
def validate
|
9
|
+
super
|
10
|
+
validates_presence :name
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
module Termable
|
15
|
+
# For objects that have a relationship with termtaxonomies, this
|
16
|
+
# module can be mixed in and gives the ability to add a term
|
17
|
+
# directly to the model, rather than creating the relationship
|
18
|
+
# yourself. Used by Post and Link.
|
19
|
+
def add_term(term, taxonomy, description, count)
|
20
|
+
if term.respond_to?(:term_id)
|
21
|
+
term_id = term.term_id
|
22
|
+
else
|
23
|
+
term_id = term.to_i
|
24
|
+
end
|
25
|
+
|
26
|
+
term_taxonomy = WPDB::TermTaxonomy.where(term_id: term_id, taxonomy: taxonomy).first
|
27
|
+
unless term_taxonomy
|
28
|
+
term_taxonomy = WPDB::TermTaxonomy.create(
|
29
|
+
term_id: term_id,
|
30
|
+
taxonomy: taxonomy,
|
31
|
+
description: description,
|
32
|
+
count: count
|
33
|
+
)
|
34
|
+
else
|
35
|
+
term_taxonomy.count += count
|
36
|
+
end
|
37
|
+
|
38
|
+
add_termtaxonomy(term_taxonomy)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
module WPDB
|
2
|
+
class TermRelationship < Sequel::Model(:"#{WPDB.prefix}term_relationships")
|
3
|
+
def_column_alias(:obj_id, :object_id)
|
4
|
+
|
5
|
+
many_to_one :post, class: 'WPDB::Post', key: :object_id
|
6
|
+
many_to_one :link, class: 'WPDB::Link', key: :object_id
|
7
|
+
|
8
|
+
many_to_one :termtaxonomy,
|
9
|
+
class: 'WPDB::TermTaxonomy',
|
10
|
+
key: :term_taxonomy_id
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module WPDB
|
2
|
+
class TermTaxonomy < Sequel::Model(:"#{WPDB.prefix}term_taxonomy")
|
3
|
+
one_to_many :termrelationships, class: 'WPDB::TermRelationship'
|
4
|
+
|
5
|
+
many_to_one :term, class: 'WPDB::Term'
|
6
|
+
|
7
|
+
many_to_many :posts,
|
8
|
+
left_key: :term_taxonomy_id,
|
9
|
+
right_key: :object_id,
|
10
|
+
join_table: "#{WPDB.prefix}term_relationships",
|
11
|
+
class: 'WPDB::Post'
|
12
|
+
|
13
|
+
many_to_many :links,
|
14
|
+
left_key: :term_taxonomy_id,
|
15
|
+
right_key: :object_id,
|
16
|
+
join_table: "#{WPDB.prefix}term_relationships",
|
17
|
+
class: 'WPDB::Link'
|
18
|
+
end
|
19
|
+
end
|
@@ -11,8 +11,8 @@ module WPDB
|
|
11
11
|
class User < Sequel::Model(:"#{WPDB.user_prefix}users")
|
12
12
|
plugin :validation_helpers
|
13
13
|
|
14
|
-
one_to_many :usermeta, :
|
15
|
-
one_to_many :posts, :
|
14
|
+
one_to_many :usermeta, class: 'WPDB::UserMeta'
|
15
|
+
one_to_many :posts, key: :post_author, class: :'WPDB::Post'
|
16
16
|
|
17
17
|
def validate
|
18
18
|
super
|
@@ -33,7 +33,4 @@ module WPDB
|
|
33
33
|
super
|
34
34
|
end
|
35
35
|
end
|
36
|
-
|
37
|
-
class UserMeta < Sequel::Model(:"#{WPDB.user_prefix}usermeta")
|
38
|
-
end
|
39
36
|
end
|
data/lib/ruby-wpdb/version.rb
CHANGED
data/lib/ruby-wpdb.rb
CHANGED
@@ -7,25 +7,29 @@ require 'pathname'
|
|
7
7
|
require_relative 'ruby-wpdb/config'
|
8
8
|
|
9
9
|
module WPDB
|
10
|
+
class ConfigFileError < StandardError; end
|
11
|
+
|
10
12
|
class << self
|
11
13
|
attr_accessor :db, :prefix, :user_prefix, :initialized
|
12
14
|
|
13
15
|
# Given the path to a YAML file, will initialise WPDB using the
|
14
16
|
# config files found in that file.
|
15
17
|
def from_config(file = nil)
|
16
|
-
|
17
|
-
file = Pathname(file)
|
18
|
-
|
19
|
-
case file.extname
|
20
|
-
when ".yml"
|
21
|
-
config_file = Config::YAML.new(file)
|
22
|
-
when ".php"
|
23
|
-
config_file = Config::WPConfig.new(file)
|
24
|
-
end
|
18
|
+
config_file = config_file(file)
|
25
19
|
|
26
20
|
init(config_file.config[:uri], config_file.config[:prefix])
|
27
21
|
end
|
28
22
|
|
23
|
+
def config_file(file = nil)
|
24
|
+
file = Config::AutoDiscover.new.file unless file
|
25
|
+
raise ConfigFileError, "No config file specified, and none found" unless file
|
26
|
+
|
27
|
+
file = Config::AutoFormat.new(file)
|
28
|
+
raise ConfigFileError, "Unknown config file format for file #{file}" unless file.format
|
29
|
+
|
30
|
+
file
|
31
|
+
end
|
32
|
+
|
29
33
|
# Initialises Sequel, sets up some necessary variables (like
|
30
34
|
# WordPress's table prefix), and then includes our models.
|
31
35
|
#
|
@@ -40,16 +44,20 @@ module WPDB
|
|
40
44
|
WPDB.prefix = prefix || 'wp_'
|
41
45
|
WPDB.user_prefix = user_prefix || WPDB.prefix
|
42
46
|
|
43
|
-
require_relative 'ruby-wpdb/
|
44
|
-
require_relative 'ruby-wpdb/
|
45
|
-
require_relative 'ruby-wpdb/
|
46
|
-
require_relative 'ruby-wpdb/
|
47
|
-
require_relative 'ruby-wpdb/
|
48
|
-
require_relative 'ruby-wpdb/
|
47
|
+
require_relative 'ruby-wpdb/option'
|
48
|
+
require_relative 'ruby-wpdb/user'
|
49
|
+
require_relative 'ruby-wpdb/usermeta'
|
50
|
+
require_relative 'ruby-wpdb/term'
|
51
|
+
require_relative 'ruby-wpdb/term_relationship'
|
52
|
+
require_relative 'ruby-wpdb/term_taxonomy'
|
53
|
+
require_relative 'ruby-wpdb/post'
|
54
|
+
require_relative 'ruby-wpdb/postmeta'
|
55
|
+
require_relative 'ruby-wpdb/comment'
|
56
|
+
require_relative 'ruby-wpdb/commentmeta'
|
57
|
+
require_relative 'ruby-wpdb/link'
|
49
58
|
require_relative 'ruby-wpdb/gravityforms'
|
50
59
|
|
51
60
|
WPDB.initialized = true
|
52
61
|
end
|
53
62
|
end
|
54
63
|
end
|
55
|
-
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-wpdb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rob Miller
|
@@ -109,33 +109,117 @@ dependencies:
|
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '10.1'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
112
|
+
name: rubygems-tasks
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: '0.
|
117
|
+
version: '0.2'
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: '0.
|
124
|
+
version: '0.2'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
126
|
+
name: rspec
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
129
|
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version: '
|
131
|
+
version: '2.14'
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version: '
|
138
|
+
version: '2.14'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: rack-test
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0.6'
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0.6'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: guard
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '2.6'
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - "~>"
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '2.6'
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: guard-rspec
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - "~>"
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '4.2'
|
174
|
+
type: :development
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - "~>"
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '4.2'
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: guard-bundler
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - "~>"
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: '2.0'
|
188
|
+
type: :development
|
189
|
+
prerelease: false
|
190
|
+
version_requirements: !ruby/object:Gem::Requirement
|
191
|
+
requirements:
|
192
|
+
- - "~>"
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: '2.0'
|
195
|
+
- !ruby/object:Gem::Dependency
|
196
|
+
name: mutant
|
197
|
+
requirement: !ruby/object:Gem::Requirement
|
198
|
+
requirements:
|
199
|
+
- - "~>"
|
200
|
+
- !ruby/object:Gem::Version
|
201
|
+
version: '0.5'
|
202
|
+
type: :development
|
203
|
+
prerelease: false
|
204
|
+
version_requirements: !ruby/object:Gem::Requirement
|
205
|
+
requirements:
|
206
|
+
- - "~>"
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: '0.5'
|
209
|
+
- !ruby/object:Gem::Dependency
|
210
|
+
name: mutant-rspec
|
211
|
+
requirement: !ruby/object:Gem::Requirement
|
212
|
+
requirements:
|
213
|
+
- - "~>"
|
214
|
+
- !ruby/object:Gem::Version
|
215
|
+
version: '0.5'
|
216
|
+
type: :development
|
217
|
+
prerelease: false
|
218
|
+
version_requirements: !ruby/object:Gem::Requirement
|
219
|
+
requirements:
|
220
|
+
- - "~>"
|
221
|
+
- !ruby/object:Gem::Version
|
222
|
+
version: '0.5'
|
139
223
|
description: ruby-wpdb gives you a painless way to access and interact with WordPress
|
140
224
|
from Ruby, accessing posts, tags, and all other WordPress concepts as plain-old
|
141
225
|
Ruby objects.
|
@@ -152,25 +236,20 @@ files:
|
|
152
236
|
- data/query.log
|
153
237
|
- data/wp-config-sample.php
|
154
238
|
- lib/ruby-wpdb.rb
|
155
|
-
- lib/ruby-wpdb/
|
239
|
+
- lib/ruby-wpdb/comment.rb
|
240
|
+
- lib/ruby-wpdb/commentmeta.rb
|
156
241
|
- lib/ruby-wpdb/config.rb
|
157
242
|
- lib/ruby-wpdb/gravityforms.rb
|
158
|
-
- lib/ruby-wpdb/
|
159
|
-
- lib/ruby-wpdb/
|
160
|
-
- lib/ruby-wpdb/
|
161
|
-
- lib/ruby-wpdb/
|
162
|
-
- lib/ruby-wpdb/
|
243
|
+
- lib/ruby-wpdb/link.rb
|
244
|
+
- lib/ruby-wpdb/option.rb
|
245
|
+
- lib/ruby-wpdb/post.rb
|
246
|
+
- lib/ruby-wpdb/postmeta.rb
|
247
|
+
- lib/ruby-wpdb/term.rb
|
248
|
+
- lib/ruby-wpdb/term_relationship.rb
|
249
|
+
- lib/ruby-wpdb/term_taxonomy.rb
|
250
|
+
- lib/ruby-wpdb/user.rb
|
251
|
+
- lib/ruby-wpdb/usermeta.rb
|
163
252
|
- lib/ruby-wpdb/version.rb
|
164
|
-
- test/comments_test.rb
|
165
|
-
- test/config_test.rb
|
166
|
-
- test/gravityforms_test.rb
|
167
|
-
- test/links_test.rb
|
168
|
-
- test/options_test.rb
|
169
|
-
- test/posts_test.rb
|
170
|
-
- test/readme_test.rb
|
171
|
-
- test/terms_test.rb
|
172
|
-
- test/test_helper.rb
|
173
|
-
- test/users_test.rb
|
174
253
|
homepage: http://github.com/robmiller/ruby-wpdb
|
175
254
|
licenses:
|
176
255
|
- MIT
|
@@ -191,7 +270,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
191
270
|
version: '0'
|
192
271
|
requirements: []
|
193
272
|
rubyforge_project:
|
194
|
-
rubygems_version: 2.
|
273
|
+
rubygems_version: 2.4.6
|
195
274
|
signing_key:
|
196
275
|
specification_version: 4
|
197
276
|
summary: A Ruby ORM wrapper for WordPress
|
data/lib/ruby-wpdb/links.rb
DELETED
@@ -1,8 +0,0 @@
|
|
1
|
-
module WPDB
|
2
|
-
class Link < Sequel::Model(:"#{WPDB.prefix}links")
|
3
|
-
include Termable
|
4
|
-
|
5
|
-
one_to_many :termrelationships, :key => :object_id, :key_method => :obj_id, :class => 'WPDB::TermRelationship'
|
6
|
-
many_to_many :termtaxonomy, :left_key => :object_id, :right_key => :term_taxonomy_id, :join_table => :"#{WPDB.prefix}term_relationships", :class => 'WPDB::TermTaxonomy'
|
7
|
-
end
|
8
|
-
end
|